concretecms-community-store / community_store

An open, free and community developed eCommerce system for Concrete CMS
https://concretecms-community-store.github.io/community_store/
MIT License
106 stars 66 forks source link

Meaning of "sale price" #795

Closed mlocati closed 11 months ago

mlocati commented 1 year ago

Language barrier here :wink:

"sale price" can be the price of a sold item, correct? (For example, I found this sentence: "Typical agent's fees are around 6 per cent of the sale price.")

But "sale price" also means the price we have having applying a discount, correct?

If so (and I'm not sure it's so), "sale price" may have two different meanings depending on the context. And it's impossible to translate it (in Italian we say "prezzo di vendita" in the first case, and "prezzo scontato" in the second case).

So, what about renaming "sale price" to "discounted price"?

Mesuva commented 1 year ago

I think in the context of an online shop, 'sale price' is pretty much always referring to the price of something when it's specially discounted. If you fill in a 'sale price', that item is now 'on sale, with a discounted price'.

When real estate is sold, the term 'sale price' is used to specifically differentiate it from some of the other prices that may have been relevant, such as 'list price' or 'asking price'. Sale Price in that context is 'the price the house finally sold for'.

So I reckon the Italian would be prezzo scontato, as you're talking about a lower than normal price.

I think you'd only use prezzo di vendita, when talking about the price of items within a completed order. I'm not sure if that's past tense or not though.

I think renaming it to discounted price is a little confusing - as it might mix things up with other discounts mentioned in the system.

But that's just my Australian english understanding, I want to be flexible!

mlocati commented 1 year ago

Yep, I agree, but here's what translators see when they translate strings at translate.concretecms.org:

immagine

There's no context: translators have to check the source code.

Furthermore, the same translatable string may be used by different packages: for the package Community Store, "sale price" should be translated as "prezzo scontato", for a package "Greatest Real Estate Package" it should be "prezzo di vendita". And that's not possibe: translations in Concrete are shared across the core and all the packages.

The only solution I see is to add a "context", which allows translating the same string in different ways.

So, for example we could have:

tc('Discounted', 'Sale price');
tc('Sold', 'Sale price');

The contexts ("Discounted" and "Sold") are not displayed, but they are the only way to have two different translations for "Sale price". Contexts can be anything (like "adaskadjk"), but using a useful name can give translators a hint about the meaning of the translatable string (remember that translators aren't usually aware of the context).

mlocati commented 1 year ago

For example: the meaning of No, sale prices will not be discounted is "please don't discount items already discounted", right?

Mesuva commented 1 year ago

Yep, that's what that phrase would mean

Putting in some contexts would certainly be my preference here