aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bugzilla/Config/General.pm7
-rw-r--r--Bugzilla/Template.pm36
-rw-r--r--docs/en/rst/administering/parameters.rst3
-rw-r--r--template/en/default/admin/params/general.html.tmpl8
-rw-r--r--template/en/default/global/common-links.html.tmpl2
-rw-r--r--template/en/default/global/docslinks.html.tmpl3
-rw-r--r--template/en/default/index.html.tmpl8
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>