No Code Attached Yet bug

Steps to reproduce the issue

I used FireFox with prefered language English [en] on Debian Linux.

  1. Completely clear browser cache.
  2. Follow the link https://bogenparadies.de/kontakt
  3. Verify URL in address field is https://bogenparadies.de/de/kontakt.
  4. verify that all three: menu, contact form an miscelleaneous information are in German.
  5. Follow the link https://bogenparadies.de/contact
  6. Verivy URL in address field is https://bogenparadies.de/en/contact.
  7. Verify that all three: menu, contact form and miscelleaneous information are in English.

If everything is OK:
8. Repeat multiple times.

Expected result

Joomla! always produce consistant output.
Menue, contact form and miscelleaneous information are all in German or all in English.

Actual result

Some times Contact Form and Miscellaneous Information are in different language.
This should not be, since the form and the miscelleanous information are created from one contact (System -> Content -> Contacts -> Contacts) a contact may either be in German or in English but not both.

System information (as much as possible)

Debian 11.5, FireFox, Joomla! 4.2.4 (upgraded from 3.x) with languagepacks en-GB, de-DE and th-TH no other extensions installed.

Additional comments

All Menu Items pointing to the two forms are set to language All.
The form with Alias contact is set to language English.
The form with Alias kontakt ist set to language German.

Whenever the mixed languages in the form and miscelleanous information appear, then the address bar also shows a mixed URI like /en/kontakt or /de/contact.

avatar RichardZimmerEschborn RichardZimmerEschborn - open - 4 Nov 2022
avatar RichardZimmerEschborn RichardZimmerEschborn - change - 4 Nov 2022
Labels Removed: ?
avatar joomla-cms-bot joomla-cms-bot - change - 4 Nov 2022
Labels Added: No Code Attached Yet
avatar joomla-cms-bot joomla-cms-bot - labeled - 4 Nov 2022
avatar RichardZimmerEschborn RichardZimmerEschborn - change - 4 Nov 2022
The description was changed
avatar RichardZimmerEschborn RichardZimmerEschborn - edited - 4 Nov 2022
avatar richard67
richard67 - comment - 4 Nov 2022

I assume this is not a standard Joomla multilinguag setup but the workaround of which you wrote in your comment here: #39100 (comment) . Otherwise it would not be possible to use the 2 mentioned URLs, both without language code.

If my assumption is true, you should describe your workaround here or link to a description so people can help.

avatar RichardZimmerEschborn
RichardZimmerEschborn - comment - 4 Nov 2022

It is a mixed setup. Some pages and menues are multi language and some are not. As mentioned in the issue report the involved contacts are marked as German and English and the menues are marked as language All.

This is the whole workaround nothing more.

SEF URLs are active also URL Rewriting is on.

The .htaccess file is active and it is the default file which came with Jommla! 3 (since the site is upgraded from Joomla! 3
.
Just to make sure here are the entries:

<IfModule autoindex>
  IndexIgnore *
</IfModule>

## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes

RewriteEngine On

RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]

No extensions installed. I had Akeeba Backup installed and a small plugin for conditional content. Had a hard time to get it out, am not shure if it makes a difference because it left some garbage which I had to remove manual. I removed that before the upgrade to Joomla! 3.10 to 4.2

For styling I added a user.css to Cassiopeia.

Nothing else that I remember.

P.S. I took a look at the Routing Component and think it would be an inspiration to take a look at how the routing engine is implemented in django.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/39151.

avatar RichardZimmerEschborn RichardZimmerEschborn - change - 4 Nov 2022
The description was changed
avatar RichardZimmerEschborn RichardZimmerEschborn - edited - 4 Nov 2022
avatar wojtekxtx
wojtekxtx - comment - 7 Nov 2022

Just separate those installs (install two Joomla's; both in separate folders, install one lang per install, than just make parent > child structure in your webserver. Detection based on client's IP. I know thats doubling ( at the very best ) on resources butr this is how its done.

Other way is just make complete rewrite of in-built language module to make it more dynamic. Im more than sure this is not going to happen.

avatar RichardZimmerEschborn
RichardZimmerEschborn - comment - 8 Nov 2022

Doubling the installation would not allow assosiations between articles. Therefore it would render the entire multi-language feature obsolate. Besides, doubling would mean tripling for three languages and so on.

As a workaround until the routing is fixed, I experimented with rewriting the URL from the Apache2 web server with mod_rewrite, but it does not change the URI. It seems that the URI is interpreted to use the alias to find the menu item and then the contact to output. This is perfectly logical, because somehow the information has to be evaluated. But there is no way to rewrite the URI.

From the documentation of Apache2 it seems that there is a possibility to use mod_proxy, because this would also change the URI. But I have not been able to get it to work.

I already suggested a rule based routing engine (like python django has it). That would on one hand provide a lot of flexibility for the Joomla! users. On the other hand it would make routing more stable because it would not need to interpret single attibutes of articles, menuitems etc. But exchanging the whole routing component is a major change to Joomla!. That would be more like a feature request for Joomla! 5 or 6.

However, all this does not change the fact that different parts of a single contact are output in two different languages. This looks to me like bug.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/39151.

avatar wojtekxtx
wojtekxtx - comment - 8 Nov 2022

Therefore it would render the entire multi-language feature obsolate

@RichardZimmerEschborn if doubling would render multilang feature obsolete, it means that multi-lang feature was designed badly. Well designed multilang would work with doubled ( or even more tiered ) Joomla without any issues......Maybe its time to redesign multilang support within Joomla?

I experimented with rewriting the URL from the Apache2 web server with mod_rewrite, but it does not change the URL

You experimented not fully man. mod_rewrite handles changing URL without any issue. I agree, though, that to configure it properly, is not easy task.

But there is no way to rewrite the URI.

Oh yes, there is a way. One of which is mod_proxy.

I already suggested a rule based routing engine

Thats one possibility. However, major drawback from this, is that it will require lots of code to be added, another lots of code rewritten......... so it will do two things:

  • require lots of work to implement,
  • decrease readibility, maintainability, and usefulness of code
avatar RichardZimmerEschborn
RichardZimmerEschborn - comment - 8 Nov 2022

@wojtekxtx

Sorry for me not being able to express myself in an understandable manner. Sorry also for my mistakes and for not knowing Joomla! as deep as I would like.

Your first quote

I understood, that you suggest installing multiple complete Joomla instances in parallel, one for each language.

I have no idea how to make Assosiations between an article in one language (which,following your suggestion, would be stored in one Joomla! installation) to the same article in the other language (which, again following your suggestion, would be stored in the other Joomla! installation) This, for my understanding is the main feature of multi-language.

So please tell, how to do that. Or explain how you understand I should install Joomla to fix the issue.

Your second quote

You quoted wrong! I wrote:

I experimented with rewriting the URL from the Apache2 web server with mod_rewrite, but it does not change the URI.

If anyone has an idea how to rewrite the URI using mod_rewrite, please tell.

Your third quote

You quoted wrong again. This sentence belongs to the paragraph about mod_rewrite so it should read:

But there is no way to rewrite the URI using mod_rewrite.

If anybody has an idea how to change the URI using mod_rewrite, please tell.

About mod_proxy

I wrote:

From the documentation of Apache2 it seems that there is a possibility to use mod_proxy, because this would also change the URI. But I have not been able to get it to work.

So, if anybody has a hint what mistake I might have taken whitch kept me from using mod_proxy to work, please tell.

Your forth quote

You are just repeating, what I already wrote about a rule based routing engine so there is nothing what could help to solve the issue.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/39151.

avatar RichardZimmerEschborn
RichardZimmerEschborn - comment - 8 Nov 2022

I got mod_proxy working. So I do not need hints to Apache2 mod_proxy any more.

Thanks anyway

P.S. The issue itself still exists, I just hope to now find a way to work around it.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/39151.

avatar Hackwar Hackwar - change - 22 Feb 2023
Labels Added: bug
avatar Hackwar Hackwar - labeled - 22 Feb 2023
avatar brianteeman
brianteeman - comment - 20 Nov 2024

It is over a year since your last comment and there have been a lot of changes in the core since then - Is this still a problem for you?

Add a Comment

Login with GitHub to post a comment