Komet / MediaElch

Media Manager for Kodi
https://mediaelch.github.io/mediaelch-doc/about.html
GNU Lesser General Public License v3.0
835 stars 94 forks source link

[TMDb] Some languages are missing #901

Closed Thanatad closed 4 years ago

Thanatad commented 4 years ago

Is your feature request related to a problem? Please describe. Scraper doesn't support some languages.

Describe the solution you'd like Please make Scraper support Thai.

bugwelle commented 4 years ago

Hi,

what scraper are you talking about? :-) IMDb, TMDb, ...?

Thanatad commented 4 years ago

themoviedb, thank you.

bugwelle commented 4 years ago

Ah, I see. Indeed, TheMovieDb supports Thai (language code th): https://api.themoviedb.org/3/configuration/languages?api_key=

MediaElch currently only supports a subset of those, see: https://github.com/Komet/MediaElch/blob/4031802b48af3ae66aa9ca8f26fccbb7de944bd1/src/scrapers/movie/TMDb.cpp#L163-L194

I'll rename this issue because it affects only TMDb (though other scrapers may also miss some languages). I'll add the missing languages on the weekend. Thank you for reporting this issue.

Regards, Andre

bugwelle commented 4 years ago

I'll use the list of officially supported languages from https://api.themoviedb.org/3/configuration/primary_translations?api_key=

ticao2 commented 4 years ago

It may be best not to leave the MediaElch API_KEY exposed. Maybe replace it with [THE_KEY].

bugwelle commented 4 years ago

The key is visible in the source code. Putting it here makes no difference :-) It has always been visible and if I remember correctly, there is no obligation to hide it. If we were to encrypt it, MediaElch would still need to decrypt it. And the key for decrypting the api_key would have to be somewhere as well. May be worth thinking about if we generate a new key or similar. It has been this way for since before I started developing for MediaElch.

ticao2 commented 4 years ago

Yes, I know it's in the Source Code. But, without a doubt, it is more difficult for a teenager, who is setting up a Stream Service, to find the Key in the Source Code than here in the comments. Many of these teenagers can't even figure out how to request an API Key on the TMDb website. :-) I explained it to several of them myself. Finding in the Source Code is much more difficult.

bugwelle commented 4 years ago

But, without a doubt, it is more difficult for a teenager, who is setting up a Stream Service, to find the Key in the Source Code than here in the comments.

Good point. :-) I've edited my posts and have removed the old revisions containing the key.

bugwelle commented 4 years ago

While we're at it:

MediaElch has a few language select menus (drop down menus, etc). They all list languages differently. What would be the best choice here?

Example (using German) Name (English): German (Switzerland) Name (German): Deutsch (Schweiz) ISO Code: de-CH

What should be printed?

  1. German (Deutsch) => name only: English (German)
  2. Deutsch (German) => vice versa
  3. German (Switzerland) => name (country) in English
  4. Deutsch (Schweiz) => same but in German
  5. Deutsch, Schweiz (German, Switzerland)
  6. German, Switzerland (Deutsch, Schweiz)
  7. Deutsch (de-CH)
  8. German (de-CH)
  9. ...

Currently it's (4) for at least one menu. What's your opinion on this? :)

ticao2 commented 4 years ago

I don't think I understood the problem. There are 6 dropdown for language. 2 of TMDb. I think the list is the same for both. That is: Language or Language-COUNTRY
And 4 more for AEBN, The TV DB, Universal Music Scraper and Fanart.tv I believe that all 4 are the same. They only show the Language.

And all 6 are translated into my language. So I imagine that they are also translated into English and German. So in English is German and in German is Deutsch. And in Portuguese it's Alemão.

Is the problem that the lists are not translated into all GUI languages? Or do you intend not to need the translation of the lists using the name of each language already translated into the language itself?

Castellano (España) Deutsch (Schweiz) English (United States) Português (Brasil)

EDIT And just to complicate it a little. :-) If all options used will be the language-COUNTRY code, I suggest reversing the order. Insert the ISO code first.

de-CH - german-Switzerland en-US - english-United States pt-BR - portuguese-Brazil pt-PT - portuguese-Portugal

People may not know all the codes. But people probably know the code of your language-COUNTRY.

bugwelle commented 4 years ago

Sorry, I didn't specify my issue as good as I thought. 😃
I mean that there are language drop down menus that show the user different values for the same language. The TMDb language dropdown shows it in the user's language in the form Language (Country). Another dropdown doesn't distinguish between e.g. pt-BR and pt-PT, i.e. only shows Portuguese.
My question is whether we should show the languages in the users language (e.g. "Deutsch" instead of "German") or always in English. The latter could be useful for selecting the UI language. I'm not talking about the internal representation of languages.

I hope that makes it clearer. :-)