diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2010-03-13 17:45:41 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2010-03-13 17:45:41 +0000 |
commit | e605973ec4f5915abbfc14aea742cb5aff4bbb99 (patch) | |
tree | 527742add46de917397d56a6cb2585175ed581e4 | |
parent | 8cc519e7637d463462e8c8298669fddeaabacb49 (diff) | |
download | redmine-e605973ec4f5915abbfc14aea742cb5aff4bbb99.tar.gz redmine-e605973ec4f5915abbfc14aea742cb5aff4bbb99.zip |
Move issue watchers to the sidebar.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3579 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | app/helpers/watchers_helper.rb | 12 | ||||
-rw-r--r-- | app/views/issues/show.rhtml | 17 | ||||
-rw-r--r-- | app/views/watchers/_watchers.rhtml | 27 | ||||
-rw-r--r-- | public/stylesheets/application.css | 7 |
4 files changed, 36 insertions, 27 deletions
diff --git a/app/helpers/watchers_helper.rb b/app/helpers/watchers_helper.rb index 3529b8e00..2695ce9f6 100644 --- a/app/helpers/watchers_helper.rb +++ b/app/helpers/watchers_helper.rb @@ -48,8 +48,8 @@ module WatchersHelper # Returns a comma separated list of users watching the given object def watchers_list(object) remove_allowed = User.current.allowed_to?("delete_#{object.class.name.underscore}_watchers".to_sym, object.project) - object.watcher_users.collect do |user| - s = content_tag('span', link_to_user(user), :class => 'user') + lis = object.watcher_users.collect do |user| + s = avatar(user, :size => "16").to_s + link_to_user(user, :class => 'user').to_s if remove_allowed url = {:controller => 'watchers', :action => 'destroy', @@ -59,9 +59,11 @@ module WatchersHelper s += ' ' + link_to_remote(image_tag('delete.png'), {:url => url}, :href => url_for(url), - :style => "vertical-align: middle") + :style => "vertical-align: middle", + :class => "delete") end - s - end.join(",\n") + "<li>#{ s }</li>" + end + lis.empty? ? "" : "<ul>#{ lis.join("\n") }</ul>" end end diff --git a/app/views/issues/show.rhtml b/app/views/issues/show.rhtml index a551efb80..3be765d0c 100644 --- a/app/views/issues/show.rhtml +++ b/app/views/issues/show.rhtml @@ -77,14 +77,6 @@ </div> <% end %> -<% if User.current.allowed_to?(:add_issue_watchers, @project) || - (@issue.watchers.any? && User.current.allowed_to?(:view_issue_watchers, @project)) %> -<hr /> -<div id="watchers"> -<%= render :partial => 'watchers/watchers', :locals => {:watched => @issue} %> -</div> -<% end %> - </div> <% if @changesets.any? %> @@ -121,7 +113,14 @@ <% html_title "#{@issue.tracker.name} ##{@issue.id}: #{@issue.subject}" %> <% content_for :sidebar do %> - <%= render :partial => 'issues/sidebar' %> + <%= render :partial => 'issues/sidebar' %> + + <% if User.current.allowed_to?(:add_issue_watchers, @project) || + (@issue.watchers.any? && User.current.allowed_to?(:view_issue_watchers, @project)) %> + <div id="watchers"> + <%= render :partial => 'watchers/watchers', :locals => {:watched => @issue} %> + </div> + <% end %> <% end %> <% content_for :header_tags do %> diff --git a/app/views/watchers/_watchers.rhtml b/app/views/watchers/_watchers.rhtml index bf04e1bcb..8e361ede6 100644 --- a/app/views/watchers/_watchers.rhtml +++ b/app/views/watchers/_watchers.rhtml @@ -6,20 +6,21 @@ :object_id => watched} if User.current.allowed_to?(:add_issue_watchers, @project) %> </div> -<p><strong><%= l(:label_issue_watchers) %></strong></p> -<%= watchers_list(watched) %> +<h3><%= l(:label_issue_watchers) %> (<%= watched.watcher_users.size %>)</h3> <% unless @watcher.nil? %> -<% remote_form_for(:watcher, @watcher, - :url => {:controller => 'watchers', - :action => 'new', - :object_type => watched.class.name.underscore, - :object_id => watched}, - :method => :post, - :html => {:id => 'new-watcher-form'}) do |f| %> -<p><%= f.select :user_id, (watched.addable_watcher_users.collect {|m| [m.name, m.id]}), :prompt => "--- #{l(:actionview_instancetag_blank_option)} ---" %> + <% remote_form_for(:watcher, @watcher, + :url => {:controller => 'watchers', + :action => 'new', + :object_type => watched.class.name.underscore, + :object_id => watched}, + :method => :post, + :html => {:id => 'new-watcher-form'}) do |f| %> + <p><%= f.select :user_id, (watched.addable_watcher_users.collect {|m| [m.name, m.id]}), :prompt => "--- #{l(:actionview_instancetag_blank_option)} ---" %> -<%= submit_tag l(:button_add) %> -<%= toggle_link l(:button_cancel), 'new-watcher-form'%></p> -<% end %> + <%= submit_tag l(:button_add) %> + <%= toggle_link l(:button_cancel), 'new-watcher-form'%></p> + <% end %> <% end %> + +<%= watchers_list(watched) %> diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css index 4623ff961..9c4dcdffe 100644 --- a/public/stylesheets/application.css +++ b/public/stylesheets/application.css @@ -195,6 +195,13 @@ div.members h3 { background: url(../images/group.png) no-repeat 0% 50%; padding- div.news h3 { background: url(../images/news.png) no-repeat 0% 50%; padding-left: 20px; } div.projects h3 { background: url(../images/projects.png) no-repeat 0% 50%; padding-left: 20px; } +#watchers ul {margin: 0; padding: 0;} +#watchers li {list-style-type:none;margin: 0px 2px 0px 0px; padding: 0px 0px 0px 0px;} +#watchers select {width: 95%; display: block;} +#watchers a.delete {opacity: 0.4;} +#watchers a.delete:hover {opacity: 1;} +#watchers img.gravatar {vertical-align: middle;margin-right: 4px;} + .highlight { background-color: #FCFD8D;} .highlight.token-1 { background-color: #faa;} .highlight.token-2 { background-color: #afa;} |