Bug #25126
openVPAT Initial Report
0%
Description
Hi All,
We received the initial report from TPGi, which I've attached here. Please look it over.
Next steps:
- we need to get our team trained on the ARC platform that TPGi uses to review issues. I think we need to wait for Boone to be back to schedule that, so it may be a few weeks
- we need to come up with a plan for addressing these issues
- once we're in the ARC platform, we can ask questions of TPGi as we go along
TPGi is in a position to invoice us for work done, so we have some time to work on this -- as we said in our last meeting on Tuesday, this can be a summer-long project for us
Please let me know whether you have any questions
Files
Updated by Boone Gorges 2 months ago
Thanks for sharing, Matt.
I've had a quick look at the documents. Most of them require minor technical fixes. It's likely that the majority of our time will be spent addressing the small subset of items that are more substantial.
Let's go ahead and get a meeting on the calendar to talk about the ARC software. If we're going to be using that software to communicate with TPGi, including letting them know that a specific item has been addressed, then I think we should wait until we've had this meeting and been onboarded before we begin the work of addressing any issues.
After that, we'll need to decide how to divvy up the work. The vast majority of the items have straightforward fixes and are siloed from one another, so we could cleanly divide them up between members of our dev team. But some of them will be larger or will have more interconnection with each other. Ray and Jeremy, I'll be unavailable to catalog these for the next week-and-a-half or so, but perhaps you could spend a half an hour each looking through to identify those items that will (a) require some meaningful technical decisions about how to remediate and/or (b) are related to other items on the list and so should be handled together to ensure a consistent approach. This will help us to decide how the work gets divided between us.
Updated by Raymond Hoh 2 months ago
I looked at the VPAT report and have done a brief outline, split into items that we could divvy up across the team.
Numbers denoted in brackets correspond to the line item in the VPAT report.
- Admin bar
- Tied to WordPress internals. Modifications might require JS due to lack of appropriate filters (1.1, 2, 3, 5, 6)
- Page layout
- Header (4)
- Homepage (8, 9, 10, 11)
- About (27)
- Directories (12, 17)
- Cards (14, 20)
- Pagination (15)
- Commons Profile Breadcrumb (16)
- CAC components
- Group Library (23)
- Rewrite markup with <table> element (23.4)
- CV Editor (30)
- CAC Onboarding Modal (38, 39, 40)
- Group Library (23)
- BuddyPress components
- Group creation (31)
- Group admin (32.6, 34)
- Site creation (37)
- Registration (28, 29)
- Third-party plugins: These are items that will require template overrides or custom JS.
- bbPress
- Rewrite forum index markup with <table> element (21)
- Event Organiser
- Calendar controls (24)
- Calendar table markup uses nested tables (25.2)
- Calendar event JS tooltip not focusable with keyboard. See qTip2 item under "Third-party JS" section. (25.3)
- bbPress
- Third-party JS: Some issues stem from using third-party JS. This might be complicated to address.
- Jcrop
- BuddyPress photo upload cropper uses Jcrop, which is bundled with WordPress but isn't used in WordPress core anymore. It's an older library that hasn't been updated in 8 years, so would have to either fork and patch Jcrop ourselves and/or supplement BuddyPress's avatar.js to make the cropper keyboard-accessible (35.3, 35.5).
- qTip2
- Event Organiser's calendar event JS tooltip uses qTip2. It's an older library that was archived on Github in 2020. Will need to patch qTip2 ourselves to make it keyboard-accessible. See https://github.com/qTip2/qTip2/issues/646 (25.3)
- Select2
- Order By Dropdown (13)
- Search field for multiple <select> options (32.4, 32.5)
- Campus, Role and Primary Purpose fields (12.4, 12.7, 33)
- Shoelace
- Copy button in Group Shortlink and Email the Group modals (19.2)
- Jcrop
- User-generated content: Not much we can do here.
- Forum posts (22.4)
- CV Editor (30.3)
The items I've added comments to are the ones I feel would require the most work at first glance, but Boone and Jeremy, feel free to fill in anything I might have missed.
Updated by Colin McDonald about 2 months ago
Here is my first draft of an internal tracking spreadsheet for us, using the more detailed spreadsheet data from TPGI that Ray highlighted during the call. I added columns for Assignee, Status, and Notes while also removing some extraneous columns and putting some less important ones farther to the right.
https://docs.google.com/spreadsheets/d/1hxMEHdPXtNnE1MxmzvIrzN662jBCnZfZo3HG2t0bLHo/edit?usp=sharing
It was difficult to format the row height consistently, given the variance of text/data in the different cells across the different issues, so feel free to adjust that or suggest columns where the content can be cut off at first glance.
Updated by Raymond Hoh about 13 hours ago
I've added a filter in the VPAT spreadsheet to view remaining items: https://docs.google.com/spreadsheets/d/1hxMEHdPXtNnE1MxmzvIrzN662jBCnZfZo3HG2t0bLHo/edit?gid=1921934342#gid=1921934342&fvid=1739014404.
There are some items that will require more work than others:
Event calendar output uses nested table markup (510228-02)
This would require upgrading Event Organiser's version of the fullCalendar JS library from v2.2.7 to v7.0.2. We would also need to rework code in our bp-event-organiser plugin, plus our bp-nelo mods.
The new version of fullCalendar doesn't actually use table markup. It uses a series of nested <div> containers with aria roles emulating a table set up -- grid / rowgroup / row / etc. See https://github.com/fullcalendar/fullcalendar/issues/6641#issuecomment-2579096269. I did try doing an initial pass at upgrading fullCalendar and modifying portions of Event Organiser's frontend.js file locally, but while I got bits and pieces working, we would need to ensure all functionality from bp-event-organiser and our custom mods are working correctly.
Avatar cropper selection window only supports mouse-dragging motion to move selection and not single-pointer move adjustments (510209-01)
The JCrop JS library, which handles the photo cropping functionality after upload, does not support single-pointer movement. An alternative is to add new input fields to the upload screen so keyboard users can adjust the x and y coordinates of the cropper, as well as the width and height. These keyboard options would placate the need to address JCrop's lack of support for single-pointer movement. If we implemented this, I think it would be best to hide these controls unless they are toggled by the user.
CV Editor items (see #25420, #25421)
Boone, other than the items above, can you take a look at the remaining list? These should be rather easy to address. Let me know if you want to pass any items my way.