Closed Bug 688241 Opened 13 years ago Closed 13 years ago

kuma: section edits - document structure, unique IDs, and granular submission

Categories

(developer.mozilla.org Graveyard :: Wiki pages, defect)

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: groovecoder, Assigned: lorchard)

References

Details

(Whiteboard: u=editor c=wiki p=3)

* Ensure sections are wrapped in HTML5 <section> tags. This should be something ckeditor does when H{1-5} tags are added. It should also be enforced/normalized on the server-side in case the page source is edited directly.

* Ensure sections have IDs that are unique per page. This could be done with UUIDs, or it could even be done with random numbers and a uniqueness check. Should be handled on both the client and server sides. 

* When editing section, post only the section content to a new URL for section editing
Add a hidden input element to the form to send the section ID.
Each one of those bullets are probably worth a separate bug of p=1 or p=2, FWIW. 

Not a clean front/backend division, either, as each should be done & enforced on the server as well as the client.
Summary: kuma: section edits - frontend → kuma: section edits - document structure, unique IDs, and granular submission
Whiteboard: u=editor c=wiki p= → u=editor c=wiki p=3
Just a progress note: I've banged my head against at least 3 separate approaches to this, and have arrived at something different than I originally specified.

Rather than forcibly restructuring the page with <section> tags, I'm going to use an outlining algorithm based on the HTML5 spec [1] to identify, extract, and replace both implicit and explicit sections. Looks like html5lib (the same as used by Bleach) will let me write a filter that does this.

I'll still filter through the page content and ensure all headers and <section>s are decorated with unique IDs, though

[1]: http://www.whatwg.org/specs/web-apps/current-work/multipage/sections.html#outlines
Assignee: nobody → lorchard
Commits pushed to https://github.com/mozilla/kuma

https://github.com/mozilla/kuma/commit/bc522aab371e4f5b6e47b9fc206c6987dc552cbe
bug 688241: Upgrade CKEditor to v3.6.2 for HTML5 support

https://github.com/mozilla/kuma/commit/51d37e8727382c2cd037615696c554c18c2305d5
bug 688241: Upgrade vendor lib with new Bleach, updates to code using Bleach

https://github.com/mozilla/kuma/commit/011a5b4bbe94a9ee900968666d83fb9d32046914
bug 688241: kuma section editing, server-side groundwork

* Initial stab at a section extraction and replacement filter for
  html5lib

* SectionIDFilter that injects unique IDs into section elements missing
  them, using it in the model and form

https://github.com/mozilla/kuma/commit/5db252d83c57b6f1f05b4d61607190b7dce55857
Merge pull request #29 from lmorchard/bug-688241-section-edits-groundwork-3

Bug 688241 section edits groundwork
The section editing stuff is not visible yet, though there is code and tests to power the user-facing side next sprint.

The one visible part is that all headers and sections of a page saved on the wiki should get IDs, something like "sect1"
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Version: Kuma → unspecified
Component: Website → Landing pages
Product: developer.mozilla.org → developer.mozilla.org Graveyard
You need to log in before you can comment on or make changes to this bug.