##// END OF EJS Templates
Don't add the inclusion error when tracker is not set, the blank error is enough....
Don't add the inclusion error when tracker is not set, the blank error is enough. git-svn-id: http://svn.redmine.org/redmine/trunk@15492 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r14889:eaea4e9fee7e
r15110:90d14b71b365
Show More
watchers_helper.rb
80 lines | 3.1 KiB | text/x-ruby | RubyLexer
/ app / helpers / watchers_helper.rb
Jean-Philippe Lang
Added encoding comment to helpers (#9792)....
r8090 # encoding: utf-8
#
Jean-Philippe Lang
Cleaner way to handle the replacement of watch links (#8071)....
r5200 # Redmine - project management software
Jean-Philippe Lang
Updates copyright for 2016....
r14856 # Copyright (C) 2006-2016 Jean-Philippe Lang
Jean-Philippe Lang
Added "Watch" functionality on issues. It allows users to receive mail notifications about issue changes....
r450 #
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
Toshi MARUYAMA
remove trailing white-spaces from app/helpers/watchers_helper.rb....
r6800 #
Jean-Philippe Lang
Added "Watch" functionality on issues. It allows users to receive mail notifications about issue changes....
r450 # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
Toshi MARUYAMA
remove trailing white-spaces from app/helpers/watchers_helper.rb....
r6800 #
Jean-Philippe Lang
Added "Watch" functionality on issues. It allows users to receive mail notifications about issue changes....
r450 # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
module WatchersHelper
Toshi MARUYAMA
remove trailing white-spaces from app/helpers/watchers_helper.rb....
r6800
Jean-Philippe Lang
Bulk watch/unwatch issues from the context menu (#7159)....
r11109 def watcher_link(objects, user)
return '' unless user && user.logged?
objects = Array.wrap(objects)
Jean-Philippe Lang
Makes #watcher_link return an empty string when given nil....
r12594 return '' unless objects.any?
Jean-Philippe Lang
Bulk watch/unwatch issues from the context menu (#7159)....
r11109
Jean-Philippe Lang
Adds Watcher.any_watched? to check if at least one object of a collection is watched....
r11729 watched = Watcher.any_watched?(objects, user)
Jean-Philippe Lang
Bulk watch/unwatch issues from the context menu (#7159)....
r11109 css = [watcher_css(objects), watched ? 'icon icon-fav' : 'icon icon-fav-off'].join(' ')
text = watched ? l(:button_unwatch) : l(:button_watch)
Jean-Philippe Lang
Use POST/DELETE to watch/unwatch an item....
r11113 url = watch_path(
Jean-Philippe Lang
Bulk watch/unwatch issues from the context menu (#7159)....
r11109 :object_type => objects.first.class.to_s.underscore,
:object_id => (objects.size == 1 ? objects.first.id : objects.map(&:id).sort)
Jean-Philippe Lang
Use POST/DELETE to watch/unwatch an item....
r11113 )
method = watched ? 'delete' : 'post'
Jean-Philippe Lang
Bulk watch/unwatch issues from the context menu (#7159)....
r11109
Jean-Philippe Lang
Use POST/DELETE to watch/unwatch an item....
r11113 link_to text, url, :remote => true, :method => method, :class => css
Jean-Philippe Lang
Added watchers for message boards (watchers controller modified to support any watchable model)....
r527 end
Toshi MARUYAMA
remove trailing white-spaces from app/helpers/watchers_helper.rb....
r6800
Jean-Philippe Lang
Cleaner way to handle the replacement of watch links (#8071)....
r5200 # Returns the css class used to identify watch links for a given +object+
Jean-Philippe Lang
Bulk watch/unwatch issues from the context menu (#7159)....
r11109 def watcher_css(objects)
objects = Array.wrap(objects)
id = (objects.size == 1 ? objects.first.id : 'bulk')
"#{objects.first.class.to_s.underscore}-#{id}-watcher"
Jean-Philippe Lang
Cleaner way to handle the replacement of watch links (#8071)....
r5200 end
Toshi MARUYAMA
remove trailing white-spaces from app/helpers/watchers_helper.rb....
r6800
Jean-Philippe Lang
Adds permissions for viewing the watcher list and adding new watchers on the issue detail view (#398)....
r1711 # Returns a comma separated list of users watching the given object
def watchers_list(object)
Jean-Philippe Lang
Add a permission to remove issue watchers (#2450)....
r2863 remove_allowed = User.current.allowed_to?("delete_#{object.class.name.underscore}_watchers".to_sym, object.project)
Jean-Philippe Lang
Fixed that watchers delete links are escaped on the issue view (#10932)....
r9517 content = ''.html_safe
Jean-Philippe Lang
Move issue watchers to the sidebar....
r3465 lis = object.watcher_users.collect do |user|
Jean-Philippe Lang
Fixed that watchers delete links are escaped on the issue view (#10932)....
r9517 s = ''.html_safe
s << avatar(user, :size => "16").to_s
s << link_to_user(user, :class => 'user')
Jean-Philippe Lang
Add a permission to remove issue watchers (#2450)....
r2863 if remove_allowed
url = {:controller => 'watchers',
:action => 'destroy',
:object_type => object.class.to_s.underscore,
:object_id => object.id,
:user_id => user}
Jean-Philippe Lang
Fixed that watchers delete links are escaped on the issue view (#10932)....
r9517 s << ' '
Jean-Philippe Lang
Improve accessibility for icon-only links by adding hidden text (#21805)....
r14889 s << link_to(l(:button_delete), url,
Jean-Philippe Lang
Replace uses of image_tag() with CSS (#21256)....
r14686 :remote => true, :method => 'delete',
:class => "delete icon-only icon-del",
:title => l(:button_delete))
Jean-Philippe Lang
Add a permission to remove issue watchers (#2450)....
r2863 end
Jean-Philippe Lang
Fixed that delete watcher link was broken by r11290 (#13231)....
r11213 content << content_tag('li', s, :class => "user-#{user.id}")
Jean-Philippe Lang
Move issue watchers to the sidebar....
r3465 end
Jean-Philippe Lang
Fixed that delete watcher link was broken by r11290 (#13231)....
r11213 content.present? ? content_tag('ul', content, :class => 'watchers') : content
Jean-Philippe Lang
Adds permissions for viewing the watcher list and adding new watchers on the issue detail view (#398)....
r1711 end
Jean-Philippe Lang
Ability to add non-member watchers on issue creation (#5159)....
r9134
def watchers_checkboxes(object, users, checked=nil)
users.map do |user|
c = checked.nil? ? object.watched_by?(user) : checked
tag = check_box_tag 'issue[watcher_user_ids][]', user.id, c, :id => nil
Toshi MARUYAMA
Rails3: helper: html_safe for watchers_checkboxes in WatchersHelper...
r9329 content_tag 'label', "#{tag} #{h(user)}".html_safe,
:id => "issue_watcher_user_ids_#{user.id}",
:class => "floating"
end.join.html_safe
Jean-Philippe Lang
Ability to add non-member watchers on issue creation (#5159)....
r9134 end
Jean-Philippe Lang
Added "Watch" functionality on issues. It allows users to receive mail notifications about issue changes....
r450 end