Threaded Comments – week 11

Here it is. Threaded view of comments in admin pages.

By default comments are collapsed and only 20 (default WordPress’s setting) ‘root-level’  comments are displayed. User by clicking collapse/expand can view sub-threads of these comments, single ‘expand’ will either show all comment on the next level of depth or will expand a few levels to show required minimum. 

Dropzone is an area to store comment, which we want to work on. Internally it uses localStorage, to allow user to move comment to distant pages or other posts or to work on these comments later. Comments can be either dropped directly to the dropzone or by using a little helper above the comment. There also exists another helper which allows to root a comment at the post. Every move and re-parent action creates entry in the history, so after making a mistake we can easily undo our action. It’s implemented, in browser’s history like fashion, using sessionStorage, history is attached to a window in a browser, different windows have different histories of actions.

Comments can be moved (or re-parented, it’s almost the same on the client side) using drag’n’drop, where we either use dropzone as an intermediary storage, or we drop comment directly onto another comment. They can also be moved using ‘bulk actions’, but in this case dropzone is always used as a middleman, we move comments to the dropzone, and then we root selected comments at another comment or post or page.
It obviously needs polishing and tweaking, but everything what required heavy coding, extending classes and overwriting files has been done, and what’s left are bugs (hopefully not many of them) and the fluffy side of the project.