Files
gollum/lib/gollum/views/latest_changes.rb
T
benjamin wil 738d6f6ec4 Start localizing the views (#1797)
* Internationalize `Views::Compare` templates

* Internationalize `Views::Error` templates

* Internationalize `Views::History` templates

* Internationalize `Views::LatestChanges` templates

* Internationalize `Views::Layout` templates

* Internationalize `Views::Overview` templates

* Internationalize `Views::Search` templates

* Reset I18n load path after I18n helper tests

* Create locale helper for global translations

There are some translation strings we should use across multiple views.
Instead of duplicating the translations, we can use a different locale
helper method, `#tt`, to get a hash of all available translations.

Then, in a partial view like `pagination.mustache`, we can render
translations regardless of what the current view class is.

This commit adds the necessary helper, tests, and uses the new method to
render translations on the `pagination.mustache` template, which is used
by many other view classes (latest changes, history, and search).
2022-07-30 17:01:05 -07:00

45 lines
1.4 KiB
Ruby

module Precious
module Views
class LatestChanges < Layout
DATE_FORMAT = '%B %d, %Y'
include Pagination
include HasUserIcons
attr_reader :wiki
def title
t[:title]
end
def versions
i = @versions.size + 1
@versions.map do |v|
i -= 1
authored_date = v.authored_date
{ :id => v.id,
:id7 => v.id[0..6],
:href => page_route("gollum/commit/#{v.id}"),
:num => i,
:author => v.author.name.respond_to?(:force_encoding) ? v.author.name.force_encoding('UTF-8') : v.author.name,
:message => v.message.respond_to?(:force_encoding) ? v.message.force_encoding('UTF-8') : v.message,
:date_full => authored_date,
:date => authored_date.strftime(DATE_FORMAT),
:datetime => authored_date.utc.iso8601,
:date_format => DATE_FORMAT,
:user_icon => self.user_icon_code(v.author.email),
:files => v.stats.files.map { |f|
new_path = extract_page_dir(f[:new_file])
{ :file => new_path,
:link => "#{page_route(new_path)}/#{v.id}",
:renamed => f[:old_file] ? extract_page_dir(f[:old_file]) : nil
}
}
}
end
end
end
end
end