Tuesday, July 20, 2010

Document Editor: Week 8

The main goal for the last week was to finish revision control for Document model. I had four tasks to complete:
  1. Deploy HTML diff engine into Melange
  2. Create view that shows diff between two revisions
  3. Update "Manage revisions" view to support diffs
  4. Code clean
All these tasks were completed successfully. HtmlDiff class from difflib was used as diff engine. I've actually tried several python diff engines from this page, but none of them appeared to work stable and fast.

I wanted URLpattern for "show diff" to be used as API. That's why I wanted it to be "pretty". But there was a problem with jqGrid buttons. Neither "redirect_simple", nor "redirect_custom" methods can create URLs with two different parameters. That's why I had to create separate button and trigger onClick event for it.

Full-featured revision control for Document model was uploaded to my appspot instance http://melange-editor.appspot.com

No comments:

Post a Comment