Project

General

Profile

Patch #40008 » delete-prefix-suffix.patch

Go MAEDA, 2024-01-06 01:02

View differences:

app/controllers/repositories_controller.rb
230 230
  # Adds a related issue to a changeset
231 231
  # POST /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues
232 232
  def add_related_issue
233
    issue_id = params[:issue_id].to_s.sub(/^#/, '')
233
    issue_id = params[:issue_id].to_s.delete_prefix('#')
234 234
    @issue = @changeset.find_referenced_issue_by_id(issue_id)
235 235
    if @issue && (!@issue.visible? || @changeset.issues.include?(@issue))
236 236
      @issue = nil
app/controllers/workflows_controller.rb
58 58

  
59 59
  def permissions
60 60
    if @roles && @trackers
61
      @fields = (Tracker::CORE_FIELDS_ALL - @trackers.map(&:disabled_core_fields).reduce(:&)).map {|field| [field, l("field_"+field.sub(/_id$/, ''))]}
61
      @fields = (Tracker::CORE_FIELDS_ALL - @trackers.map(&:disabled_core_fields).reduce(:&)).map do |field|
62
        [field, l("field_#{field.delete_suffix('_id')}")]
63
      end
62 64
      @custom_fields = @trackers.map(&:custom_fields).flatten.uniq.sort
63 65
      @permissions = WorkflowPermission.rules_by_status_id(@trackers, @roles)
64 66
      @statuses.each {|status| @permissions[status.id] ||= {}}
app/models/issue_query.rb
328 328
                        :sortable => "#{Issue.table_name}.is_private", :groupable => true)
329 329
    end
330 330

  
331
    disabled_fields = Tracker.disabled_core_fields(trackers).map {|field| field.sub(/_id$/, '')}
331
    disabled_fields = Tracker.disabled_core_fields(trackers).map {|field| field.delete_suffix('_id')}
332 332
    disabled_fields << "total_estimated_hours" if disabled_fields.include?("estimated_hours")
333 333
    @available_columns.reject! do |column|
334 334
      disabled_fields.include?(column.name.to_s)
......
479 479
  def sql_for_notes_field(field, operator, value)
480 480
    subquery = "SELECT 1 FROM #{Journal.table_name}" +
481 481
      " WHERE #{Journal.table_name}.journalized_type='Issue' AND #{Journal.table_name}.journalized_id=#{Issue.table_name}.id" +
482
      " AND (#{sql_for_field field, operator.sub(/^!/, ''), value, Journal.table_name, 'notes'})" +
482
      " AND (#{sql_for_field field, operator.delete_prefix('!'), value, Journal.table_name, 'notes'})" +
483 483
      " AND (#{Journal.visible_notes_condition(User.current, :skip_pre_condition => true)})"
484 484
    "#{/^!/.match?(operator) ? "NOT EXISTS" : "EXISTS"} (#{subquery})"
485 485
  end
app/views/trackers/_form.html.erb
17 17
  <% Tracker::CORE_FIELDS.each do |field| %>
18 18
  <label class="block">
19 19
    <%= check_box_tag 'tracker[core_fields][]', field, @tracker.core_fields.include?(field), :id => nil %>
20
    <%= l("field_#{field}".sub(/_id$/, '')) %>
20
    <%= l("field_#{field}".delete_suffix('_id')) %>
21 21
  </label>
22 22
  <% end %>
23 23
</p>
app/views/trackers/fields.html.erb
26 26
      </tr>
27 27
      <% Tracker::CORE_FIELDS.each do |field| %>
28 28
      <tr>
29
        <% field_name = l("field_#{field}".sub(/_id$/, '')) %>
29
        <% field_name = l("field_#{field}".delete_suffix('_id')) %>
30 30
        <td class="name">
31 31
          <%= link_to_function('', "toggleCheckboxesBySelector('input.core-field-#{field}')",
32 32
                               :title => "#{l(:button_check_all)}/#{l(:button_uncheck_all)}",
config/initializers/10-patches.rb
4 4
  class Base
5 5
    # Translate attribute names for validation errors display
6 6
    def self.human_attribute_name(attr, options = {})
7
      prepared_attr = attr.to_s.sub(/_id$/, '').sub(/^.+\./, '')
7
      prepared_attr = attr.to_s.delete_suffix('_id').sub(/^.+\./, '')
8 8
      class_prefix = name.underscore.tr('/', '_')
9 9

  
10 10
      redmine_default = [
lib/redmine/diff_table.rb
91 91
      if both_git_diff
92 92
        if file_name && arg == "/dev/null"
93 93
          # keep the original file name
94
          @file_name = file_name.sub(%r{^a/}, '')
94
          @file_name = file_name.delete_prefix('a/')
95 95
        else
96 96
          # remove leading a/
97
          @previous_file_name = file_name.sub(%r{^a/}, '') unless file_name == "/dev/null"
97
          @previous_file_name = file_name.delete_prefix('a/') unless file_name == "/dev/null"
98 98
          # remove leading b/
99
          @file_name = arg.sub(%r{^b/}, '')
99
          @file_name = arg.delete_prefix('b/')
100 100

  
101 101
          @previous_file_name = nil if @previous_file_name == @file_name
102 102
        end
test/functional/custom_fields_controller_test.rb
596 596
  def custom_field_classes
597 597
    files =
598 598
      Dir.glob(File.join(Rails.root, 'app/models/*_custom_field.rb')).
599
        map {|f| File.basename(f).sub(/\.rb$/, '')}
599
        map {|f| File.basename(f).delete_suffix('.rb')}
600 600
    classes = files.map {|x| x.classify.constantize}
601 601
    assert classes.size > 0
602 602
    classes
(1-1/2)