It took a bit of getting into the javascript weeds, but file locking is up and running. While a user has the edit-document screen open, the standard autosave ping serves to maintain a file lock. Other users are alerted that the document is being edited, and can view, but cannot edit the document. The lock can also be overridden and the editing user is alerted that they lost their file lock.
This week I also matured the plugin’s approach to javascript and was able to tackle a bit of low-hanging fruit.
  • Moved JavaScript from inline JS stuffed awkwardly into metaboxes to a separate file and created dev and minified versions
  • Linked JavaScript to jQuery events (rather than calling directly)
  • Fixed feed authentication
  • Fixed post-upload javascript to close the iframe and store the attachment ID
  • Fixed a handful of deprecated notices and E_NOTICE level warnings
Next week marks the midterm and the end (in theory) of new feature development. The second half of the summer, per the project schedule, will involve thoroughly kicking the tires and further refining the past few weeks work. I look forward to hearing my mentor’s continued feedback, and the community’s thoughts.