Try ERPNext Buy Support Partners Foundation

Apostrophe is showed as ' is not interpreted

Hi All!
I have install ERPNEXT. Thanks you for this great ERP.
I’m occuring a problem with apostrophe on each page.
It’s showed as HTML code : ’
Could you tell me what must I do?

Hi Dear
No solution for me? you don’t have this issue on version 12?

You’re not the only one for this bug and it’s strange

I found solution in version-12

ERPNext: v12.9.3 (version-12)
Frappe Framework: v12.6.1 (version-12)

File : frappe/frappe/public/js/frappe/views/components/ModuleLinkItem.vue

Diff :

--- a/frappe/public/js/frappe/views/components/ModuleLinkItem.vue
+++ b/frappe/public/js/frappe/views/components/ModuleLinkItem.vue
@@ -6,8 +6,8 @@
                <span :class="['indicator', indicator_color]"></span>
 
                <span v-if="disabled_dependent" class="link-content text-muted">{{ label || __(name) }}</span>
-               <a v-else class="link-content" :href="route" @click.prevent="handle_click">
-                       {{ label || __(name) }}
+               <a v-else class="link-content" :href="route" @click.prevent="handle_click" v-html="label || __(name)">
+
                </a>
                <div v-if="disabled_dependent" v-show="popover_active"
                        @mouseover="popover_hover = true" @mouseleave="popover_hover = false"

So solution is to remove mustache syntax which escape HTML entities and replace it with v-html directive : like explain here

Hi Jodeq,

I made a merge request here.
The issue was in the translation file, which contains sometimes apostrophes, and sometimes the HTML codes.

So no need to modify the source code :slight_smile:.

Hi Toto-tyou,

I understand the issue in translation file but why not allowed HTML entities in translation files ?
If a new addition in translation add again an entity this issue will happen again.

Regards.

I completely agree with you! I think the best way will be to propose this change directly inside the repository :wink:.
It is still kind of a tricky change though because you don’t know what is the impact for other languages (or on other things).