diff options
-rw-r--r-- | Bugzilla/Config/General.pm | 7 | ||||
-rw-r--r-- | Bugzilla/Template.pm | 36 | ||||
-rw-r--r-- | docs/en/rst/administering/parameters.rst | 3 | ||||
-rw-r--r-- | template/en/default/admin/params/general.html.tmpl | 8 | ||||
-rw-r--r-- | template/en/default/global/common-links.html.tmpl | 2 | ||||
-rw-r--r-- | template/en/default/global/docslinks.html.tmpl | 3 | ||||
-rw-r--r-- | template/en/default/index.html.tmpl | 8 |
7 files changed, 37 insertions, 30 deletions
diff --git a/Bugzilla/Config/General.pm b/Bugzilla/Config/General.pm index 5efaa6f6c..380680590 100644 --- a/Bugzilla/Config/General.pm +++ b/Bugzilla/Config/General.pm @@ -25,13 +25,6 @@ use constant get_param_list => ( }, { - name => 'docs_urlbase', - type => 't', - default => 'docs/%lang%/html/', - checker => \&check_url - }, - - { name => 'utf8', type => 'b', default => '0', diff --git a/Bugzilla/Template.pm b/Bugzilla/Template.pm index 3703c9188..078a8a0d6 100644 --- a/Bugzilla/Template.pm +++ b/Bugzilla/Template.pm @@ -1037,10 +1037,38 @@ sub create { 'urlbase' => sub { return Bugzilla::Util::correct_urlbase(); }, # Allow templates to access docs url with users' preferred language - 'docs_urlbase' => sub { - my $language = Bugzilla->current_language; - my $docs_urlbase = Bugzilla->params->{'docs_urlbase'}; - $docs_urlbase =~ s/\%lang\%/$language/; + # We fall back to English if documentation in the preferred + # language is not available + 'docs_urlbase' => sub { + my $docs_urlbase; + my $lang = Bugzilla->current_language; + # Translations currently available on readthedocs.org + my @rtd_translations = ('en', 'fr'); + + if ($lang ne 'en' && -f "docs/$lang/html/index.html") { + $docs_urlbase = "docs/$lang/html/"; + } + elsif (-f "docs/en/html/index.html") { + $docs_urlbase = "docs/en/html/"; + } + else { + if (!grep { $_ eq $lang } @rtd_translations) { + $lang = "en"; + } + + my $version = BUGZILLA_VERSION; + $version =~ /^(\d+)\.(\d+)/; + if ($2 % 2 == 1) { + # second number is odd; development version + $version = 'latest'; + } + else { + $version = "$1.$2"; + } + + $docs_urlbase = "https://bugzilla.readthedocs.org/$lang/$version/"; + } + return $docs_urlbase; }, diff --git a/docs/en/rst/administering/parameters.rst b/docs/en/rst/administering/parameters.rst index abfe593e1..7f376bbf2 100644 --- a/docs/en/rst/administering/parameters.rst +++ b/docs/en/rst/administering/parameters.rst @@ -59,9 +59,6 @@ maintainer responsible for maintaining this Bugzilla installation. The address need not be that of a valid Bugzilla account. -docs_urlbase - The URL that is the common initial leading part of all Bugzilla documentation URLs. It may be an absolute URL, or a URL relative to the :param:`urlbase` parameter. Leave this empty to suppress links to the documentation. ``%lang%`` will be replaced by user's preferred language (if documentation is available in that language). - utf8 Use UTF-8 (Unicode) encoding for all text in Bugzilla. Installations where this parameter is set to :paramval:`off` should set it to :paramval:`on` only diff --git a/template/en/default/admin/params/general.html.tmpl b/template/en/default/admin/params/general.html.tmpl index 4c94bc747..6ebef8ea2 100644 --- a/template/en/default/admin/params/general.html.tmpl +++ b/template/en/default/admin/params/general.html.tmpl @@ -16,14 +16,6 @@ "The email address of the person who maintains this installation " _ " of Bugzilla.", - docs_urlbase => - "The URL that is the common initial leading part of all" - _ " $terms.Bugzilla documentation URLs. It may be an absolute URL," - _ " or a URL relative to the <var>urlbase</var> parameter. Leave this" - _ " empty to suppress links to the documentation." - _ "'%lang%' will be replaced by user's preferred language (if" - _ " documentation is available in that language).", - utf8 => "Use UTF-8 (Unicode) encoding for all text in ${terms.Bugzilla}. New" _ " installations should set this to true to avoid character encoding" diff --git a/template/en/default/global/common-links.html.tmpl b/template/en/default/global/common-links.html.tmpl index ec23f551e..78b4eb80a 100644 --- a/template/en/default/global/common-links.html.tmpl +++ b/template/en/default/global/common-links.html.tmpl @@ -100,7 +100,7 @@ [% Hook.process("link-row") %] [% BLOCK link_to_documentation %] - [% IF doc_section && Param('docs_urlbase') %] + [% IF doc_section %] <li> <span class="separator">| </span> <a href="[% docs_urlbase _ doc_section FILTER html %]" target="_blank">Help</a> diff --git a/template/en/default/global/docslinks.html.tmpl b/template/en/default/global/docslinks.html.tmpl index c2cc830fa..e33aa3b17 100644 --- a/template/en/default/global/docslinks.html.tmpl +++ b/template/en/default/global/docslinks.html.tmpl @@ -22,8 +22,7 @@ # members of the admin group. #%] -[% IF Param('docs_urlbase') && - docslinks.keys.size || (admindocslinks.keys.size && user.in_group('admin')) %] +[% IF docslinks.keys.size || (admindocslinks.keys.size && user.in_group('admin')) %] <div id="docslinks"> <h2>Related documentation</h2> <ul> diff --git a/template/en/default/index.html.tmpl b/template/en/default/index.html.tmpl index aa50a60e9..84a5b7d5c 100644 --- a/template/en/default/index.html.tmpl +++ b/template/en/default/index.html.tmpl @@ -83,11 +83,9 @@ href="?GoAheadAndLogIn=1"><span>Log In</span></a> [% END %] </li> - [% IF Param("docs_urlbase") %] - <li> - <a id="help" href="[% docs_urlbase FILTER html %]using.html"><span>Documentation</span></a> - </li> - [% END %] + <li> + <a id="help" href="[% docs_urlbase FILTER html %]using/index.html"><span>Documentation</span></a> + </li> </ul> </div> |