From 7891f2ead5f6f71cb2a10d71ad8c4cc98bf9a4d0 Mon Sep 17 00:00:00 2001 From: "justdave%syndicomm.com" <> Date: Sat, 17 Aug 2002 11:40:50 +0000 Subject: Backing out patch for bug 126955 (supporting localized templates) due to fatal regression in checksetup.pl for initial checkouts/clean installs. See comment 25 onward in bug for details. --- defparams.pl | 10 ---------- globals.pl | 50 +------------------------------------------------- 2 files changed, 1 insertion(+), 59 deletions(-) diff --git a/defparams.pl b/defparams.pl index 991b8b220..bc73de600 100644 --- a/defparams.pl +++ b/defparams.pl @@ -244,16 +244,6 @@ sub check_urlbase { return ""; } -DefParam("languages", - "A comma-separated list of RFC 1766 language tags. These identify the languages in which you wish Bugzilla output to be displayed. Note that you must install the appropriate language pack before adding a language to this Param. The language used is the one in this list with the highest q-value in the user's Accept-Language header.", - "t", - "en"); - -DefParam("defaultlanguage", - "The UI language Bugzilla falls back on if no suitable language is found in the user's Accept-Language header.", - "t", - "en"); - DefParam("cookiepath", "Directory path under your document root that holds your Bugzilla installation. Make sure to begin with a /.", "t", diff --git a/globals.pl b/globals.pl index 6376b60f4..100c3ae2f 100644 --- a/globals.pl +++ b/globals.pl @@ -1567,54 +1567,6 @@ sub trim { return $str; } -# Make an ordered list out of a HTTP Accept-Language header see RFC 2616, 14.4 -# We ignore '*' and ;q=0 -# For languages with the same priority q the order remains unchanged. -sub sortAcceptLanguage { - sub sortQvalue { $b->{'qvalue'} <=> $a->{'qvalue'} } - my $accept_language = $_[0]; - - # clean up string. - $accept_language =~ s/[^A-Za-z;q=0-9\.\-,]//g; - my @qlanguages; - my @languages; - foreach(split /,/, $accept_language) { - my ($lang, $qvalue) = split /;q=/; - next if not defined $lang; - $qvalue = 1 if not defined $qvalue; - next if $qvalue == 0; - $qvalue = 1 if $qvalue > 1; - push(@qlanguages, {'qvalue' => $qvalue, 'language' => $lang}); - } - - return map($_->{'language'}, (sort sortQvalue @qlanguages)); -} - -# Returns the path to the templates based on the Accept-Language -# settings of the user and of the available languages -# If no Accept-Language is present it uses the defined default -sub getTemplateIncludePath () { - my @languages = sortAcceptLanguage(Param('languages')); - my @accept_language = sortAcceptLanguage($ENV{'HTTP_ACCEPT_LANGUAGE'} || ""); - my @usedlanguages; - foreach my $lang (@accept_language) { - # match exactly (case insensitive) - if(my @found = grep /^$lang$/i, @languages) { - push (@usedlanguages, $found[0]); - } - # Per RFC 1766 and RFC 2616 any language tag matches also its - # primary tag. That is en-gb matches also en but not en-uk - $lang =~ s/(-.*)//; - if($1) { - if(my @found = grep /^$lang$/i, @languages) { - push (@usedlanguages, $found[0]); - } - } - } - push(@usedlanguages, Param('defaultlanguage')); - return join(':', map("template/$_/custom:template/$_/default",@usedlanguages)); -} - ############################################################################### # Global Templatization Code @@ -1632,7 +1584,7 @@ use Template; $::template ||= Template->new( { # Colon-separated list of directories containing templates. - INCLUDE_PATH => getTemplateIncludePath() , + INCLUDE_PATH => "template/en/custom:template/en/default" , # Remove white-space before template directives (PRE_CHOMP) and at the # beginning and end of templates and template blocks (TRIM) for better -- cgit v1.2.3-24-g4f1b