Mathjax in user name on profile page is not updating <title> tag
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Won't Fix
|
Medium
|
Unassigned |
Bug Description
Eg If I have MathJax turned on and have 'displayname' for a user set to: \(\beta \alpha \delta \varsigma \pi \rho \)
When I visit their profile page I see their name displayed as βαδςπρ in page <h1> tag but the browser <title> still shows as \(\beta \alpha \delta \varsigma \pi \rho \) and makes things look broken
The MathJax is unable to update the <title> tag as it does it's magic with inserting <div> stuff.
But we can update the title tag with an approximation of what is wanted - eg for Greek letters they tend to exist in the font so we can scrape them from the page a apply them to the title.
For things like mathematical notations like square root we can't as they are made up by css tricks
So I'll add a bit of code to try and update the <title> tag so it looks less broken
Question: "Could we just not allow MathJax in the username?"
Answer: This problem also exists for normal page titles as well
The main problem is mathjax symbols are made from allowed characters, eg the symbol for pi, π, is made from \(\pi \) all of which are valid chars for a title.
So I guess during page settings form save we'd need to check if mathjax plugin is enabled and mathjax shaped syntax occurs in the title field and to throw an error on saving.
For some symbols, eg pi, we can get a better result by selecting the character by using the tinymce 'special characters' button and selecting the symbol if it exists in the font.