DHTMLX / scheduler

GPL version of JavaScript Event Scheduler
https://dhtmlx.com/docs/products/dhtmlxScheduler/
GNU General Public License v2.0
315 stars 111 forks source link

XHTML compatibility #20

Closed chinoto closed 6 years ago

chinoto commented 8 years ago

I use XHTML for testing and this breaks under XHTML, fortunately it isn't too hard of a fix. XHTML is case sensitive and only defines a few named entities so createElement() should be given a lowercase string and characters should be escaped using code points (  vs   and – vs –). There are also a few places where an entity was missing a semicolon, which is also invalid.

I believe this commit has all the changes necessary for scheduler to not break in XHTML mode, so it can be used for reference if needed: https://github.com/chinoto/scheduler/commit/c7428b9699459fe7a3b13ec9159c6050967f7769

AlexKlimenkov commented 8 years ago

Hello, thanks for contributing. We'll review changes and if all good, merge them into the dev repository so they go to future versions of the scheduler (this repository will be updated on the next minor update of the scheduler). Please note that while your update brings XHTML compatibility, there is no guarantee on how long component will stay XHTLM compatible since currently we don't do any tests for that - so somebody could break it without realizing it.

characters should be escaped using code points (  vs   and – vs –)

Could you please refer where I can read about it? I haven't exactly been digging into W3C xhtml specs, but the online validator https://validator.w3.org/#validate_by_input seems to me ok with named escape characters (e.g. &nbsp) both in XHTML 1.1 and XHTML 1.0 document modes.

chinoto commented 8 years ago

Odd, perhaps there is something I am unaware of that declares those entities or maybe the validator doesn't check that. As for the scheduler breaking XHTML compatibility again, no problem, as long as most of the stuff is fixed that I found, I can easily fix any new issues that arise when I update and submit the fixes for those too. Here are some links to info about entities: List of predefined XML entities Entity Declarations Some guide about character escapes

AlexKlimenkov commented 6 years ago

I'm closing the issue and a pull request as changes are merged into the current version of the scheduler. This repository will be updated with the next release of dhtmlxScheduler (probably early-mid March 2018)