Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use ILocalizationService instead of get all cultures #14934

Merged
merged 4 commits into from
Dec 21, 2023

Conversation

hishamco
Copy link
Member

No description provided.

@hishamco hishamco merged commit 3b32281 into main Dec 21, 2023
3 checks passed
@hishamco hishamco deleted the hishamco/all-cultures branch December 21, 2023 21:51
{
model.Cultures = CultureInfo.GetCultures(CultureTypes.AllCultures)
.Select(x => new SelectListItem { Text = $"{x.Name} ({x.DisplayName})", Value = x.Name });
var supportedCultures = await _localizationService.GetSupportedCulturesAsync();
Copy link
Contributor

@Skrypt Skrypt Jan 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sebastienros I'm not sure this is appropriate to list only supported cultures. This means that now the ElasticSearch indices culture can only be supported cultures that are added in the Admin UI. This means that I need to add translations to each of these supported cultures while I could have been able to loosely couple a culture with an index before.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As an example of that I could have a website that is majorly written in french but has some content in english which I would want to index in a different indice if required.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This means that I need to add translations to each of these supported cultures while I could have been able to loosely couple a culture with an index before.

How this different from getting all cultures?

Copy link
Contributor

@Skrypt Skrypt Jan 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They come from the framework instead of the DB. And the ASP.Net localization middleware will support these cultures if they are added. if you just list cultures that are in the framework ; it doesn't do anything else than that.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I knew what you mentioned :)

What I mean how the change that I made is different for the Elastic search module?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Different in what matter? I'm just saying that we should not use supported cultures only for this and also Lucene or any other Search index configuration.

Copy link
Member Author

@hishamco hishamco Jan 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Frankly, I didn't understand why using the supported cultures in this case is not preferred!! maybe @sebastienros understands what you are referring to

Copy link
Contributor

@Skrypt Skrypt Jan 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could have a website that is majorly written in english. You would have only "en" as a supported culture.
But your website has content written in french for a specific content type... then you would not want to support "fr" but only index that content type for the "fr" culture in a custom IndexingHandler...

Now, I understand that what you expect is to see the same cultures as the ones that are supported in these index settings but it is not everyone that uses OC that way. This is limiting options for people that have custom handlers.

And now I need to support all the cultures which means that I need to do custom code to remove these supported cultures from the LocalizationMiddleware.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants