Text Area Fields

Hello,

Is it possible to disable the WYSIWYG editor for some text area fields in the OJS Registration and Submission forms? We’ve noticed that these cause a keyboard trap for assistive technology users.

Thanks.

Trip Rems
CDS Media Center

Hi @wrems,

You can adjust the list of TinyMCE-enabled fields by editing plugins/generic/tinymce/TinyMCEPlugin.inc.php – but perhaps we could diagnose the problem with TinyMCE integration that’s trapping users? As far as I’m aware, TinyMCE has decent accessibility; see http://archive.tinymce.com/wiki.php/TinyMCE3x:Accessibility. Can you describe what’s happening with users using assistive technology?

Regards,
Alec Smecher
Public Knowledge Project Team

Hi Alec,

Thanks for the quick response. I checked the TinyMCE plugin file, but did not see any enabled fields listed under ‘user/profile’ or ‘user/register’. Is there any documentation that we can reference for updates to this file?

Also, thanks for sending the accessibility documentation for TinyMCE editor. I’ve tested the OJS registration form with NVDA screen reader, and can access the toolbar buttons and help window. I’m not hearing the option to “Jump to Editor Esc”, and am also not able to use the tab key to exit the WYSIWYG editor.

Thanks.

-Trip

Hi @wrems,

The field list is shared for this chunk of code:

                    case 'user/profile':
                    case 'user/register':
                    case 'user/saveProfile':
                    case 'subscriptionManager/createUser':
                    case 'subscriptionManager/updateUser':
                    case 'manager/createUser':
                    case 'manager/editUser':
                    case 'manager/updateUser':
                            $fields[] = 'mailingAddress';
                            $fields[] = 'biography';
                            break;

If you want to disable the fields for registration and profile, take the relevant lines out of the list above and make them into their own stanza:

                    case 'user/profile':
                    case 'user/register':
                    case 'user/saveProfile':
                        break;

Note that the system will still expect these fields to contain HTML, so users who want to enter <, >, &, and a few other symbols will need to escape them when entering them unless you adapt the form handling code to do so for them.

I still think the best approach will be to get TinyMCE behaving more nicely – but unfortunately I don’t have any relevant screen-reader experience. Our integration of TinyMCE is bog-standard, so it may be a matter of configuration. I’d suggest inquiring on the TinyMCE forum.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi Alec,

Thanks for the info regarding the TinyMCE plugin. I checked documentation for the editor, and it looks like there is a plugin to restore functionality of the tab and shift-tab keys in TinyMCE: https://www.tinymce.com/docs/plugins/tabfocus/. I tried adding this to the call back function in TinyMCEPlugin.inc.php, but did not notice any difference in functionality.

Also, to complicate matters, it looks like the tab and shift tab keys work as expected in Chrome and Safari-- but do not work in Firefox and IE.

Any other advice that you could offer would be greatly appreciated.

Thanks.

-Trip

Hi @wrems,

You could probably get a quick and accurate answer over at the TinyMCE forums – that’s outside my expertise, I’m afraid.

Regards,
Alec Smecher
Public Knowledge Project Team

Ok… thanks Alec. Aloha, -Trip