Module: ContextMenusHelper

Defined in:
app/helpers/context_menus_helper.rb

Overview

Redmine - project management software Copyright © 2006- Jean-Philippe Lang

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.

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.

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.

Instance Method Summary collapse

Instance Method Details



43
44
45
46
47
48
49
50
51
52
53
# File 'app/helpers/context_menus_helper.rb', line 43

def bulk_update_custom_field_context_menu_link(field, text, value)
  context_menu_link(
    h(text),
    _bulk_update_issues_path(@issue,
                            :ids => @issue_ids,
                            :issue => {'custom_field_values' => {field.id => value}},
                            :back_url => @back),
    :method => :patch,
    :selected => (@issue && @issue.custom_field_value(field) == value)
  )
end

#bulk_update_time_entry_custom_field_context_menu_link(field, text, value) ⇒ Object



55
56
57
58
59
60
61
62
63
64
# File 'app/helpers/context_menus_helper.rb', line 55

def bulk_update_time_entry_custom_field_context_menu_link(field, text, value)
  context_menu_link(
    h(text),
    bulk_update_time_entries_path(:ids => @time_entries.map(&:id).sort,
                                  :time_entry => {'custom_field_values' => {field.id => value}},
                                  :back_url => @back),
    :method => :post,
    :selected => (@time_entry && @time_entry.custom_field_value(field) == value)
  )
end


21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'app/helpers/context_menus_helper.rb', line 21

def context_menu_link(name, url, options={})
  label = name
  css_classes = [options[:class]]

  if options.delete(:selected)
    css_classes << 'icon disabled'
    options[:disabled] = true
    label = sprite_icon('checked', name)
  end

  if options.delete(:disabled)
    options.delete(:method)
    options.delete(:data)
    options[:onclick] = 'return false;'
    css_classes << 'disabled'
    url = '#'
  end

  options[:class] = class_names(css_classes)
  link_to label, url, options
end