Index: lams_central/web/includes/javascript/portrait.js =================================================================== diff -u -rd0b0ba33d9c8c8d96876b9de3263ac77643ba35a -rf53f23916969b65b3bc88655d59d37f6105a4b42 --- lams_central/web/includes/javascript/portrait.js (.../portrait.js) (revision d0b0ba33d9c8c8d96876b9de3263ac77643ba35a) +++ lams_central/web/includes/javascript/portrait.js (.../portrait.js) (revision f53f23916969b65b3bc88655d59d37f6105a4b42) @@ -94,23 +94,29 @@ console.log("Warning: portrait dataset missing. Unable to display portrait. "+element.id); return; } + + var fullName = element.dataset.fullname; + if (fullName) { + // apostrophe is the only character from monitorLesson.js#escapeHtml() which is allowed in user name + fullName = fullName.replace(''', "'"); + } if ( element.dataset.portrait ) { - var url = LAMS_URL + '/download?preferDownload=false&uuid='+element.dataset.portrait+_getSizeVersion(size); + var url = LAMS_URL + '/download?preferDownload=false&uuid='+element.dataset.portrait+_getSizeVersion(size) // uses custom template to set the size of the portrait area var template = '' $(element).popover({ template: template, content: '', html: true, trigger: 'hover focus', - title: element.dataset.fullname, + title: fullName, delay: { "show": 400, "hide": 100 }, container: 'body', // ensures popovers are not clipped within jqgrid tables - placement: placement + placement: placement }); } else { $(element).popover({ - content: element.dataset.fullname, + content: fullName, html: false, trigger: 'hover focus', delay: { "show": 400, "hide": 100 },