WYSIWYG Wiki Editor

July 27, 2008

I’ve integrated TinyMCE when editing Wiki pages and Notes. This means that you don’t have to muck about with Textile/Markdown to add formatting to your pages, as a lot of people have problems understanding how that works and getting the formatting right.

I’ve also added support for wrapping code and such in <pre></pre> which turns off all WikiWords, autolinkification and task linking.

I’ve been struggling a bit with a case of

marshal data too short

for one of my users. It happened out of the blue, and I was stumped as to how it could happen, as I only save a couple of ID’s in the sessions and never any objects.

Turns out I forgot something which is pretty obvious, really.

flash['notice'] = "#{link_to_task_with_tooltip} successfully saved"

As the tooltip contains the full task description, what would happen if someone entered a massive description (~65kb) and saved the task?

It would case the session data to get truncated on save, and end up impossible to restore on the next request.

Also, the exception when this happens doesn’t really include any useful information (like which session it was unable to restore) so I thought this was a way more common problem than it really was. Turns out this problem only affected two users, but they both kept trying and trying and it looked like I had this problem all over the place.

Fix coming up. 🙂

There’s been some changes to the GANTT view, and you can now drag a task-bar or milestone indicator to change the due dates.

All changes done to the chart are kept temporary, until you either save the new schedule or revert back to the last saved state. Saving the schedule creates Acitivity Log entries, and send out email notifications if you want and have those enabled.

Editing a task outside of the GANTT view will reset the temporary data to the new values, if they change.