[Building Sakai] autosave

Adrian Fish a.fish at lancaster.ac.uk
Thu Dec 8 01:41:55 PST 2011


There's not really much to post about, to be honest.

I implemented it all myself, no plugins or anything. You need somewhere 
to store your autosaved versions in case of a meltdown, either DB or 
local, and you need to implement logic to determine when the doc has 
changed enough to warrant autosaving. Calling FCKeditor isDirty for the 
rich text editor, setting a variable to true when the title changes, 
that kind of thing.

That Sisyphus looks good. When all the naff browsers that don't support 
local storage have expired I may look into that.

Cheers,
Adrian.

On 07/12/2011 22:13, Steve Swinsburg wrote:
> Clog has autosave. Perhaps Adrian can post about it?
>
> cheers,
> Steve
>
>
> On 08/12/2011, at 3:41 AM, Matthew Jones wrote:
>
>> I think it would depend on what your use case is.
>>
>> If you wanted the instructor to be able to recover and work on it at 
>> a later time, the functionality already exists for most tools in the 
>> form of "Hide this document". It doesn't auto-hide it, but this is 
>> something that could  potentially be enabled. Though I think the user 
>> can also go through the workflow and hit the "Hide" button just the 
>> same as the submit button. These are tools like announcements and 
>> assignment. (With an open date)
>>
>> If we wanted to protect the user from their browser crashing, the 
>> server crashing, session time out or hitting refresh or something, 
>> then this plugin looks interesting:
>> http://simsalabim.github.com/sisyphus/
>>
>> It saves specific form elements to local storage and recovers them 
>> all on the reload unless submit was hit. Most of our tools have 
>> static ids (rather than dynamically generated ids) so it should work 
>> for complex forms like in assignments or announcements. This would 
>> also protect in case of a server going down unexpectedly, which a 
>> solution of saving to a server wouldn't.
>>
>> I think the biggest issue, playing with this plugin is that if you 
>> someone opened multiple tabs pages with the same form names, it ends 
>> saving each to the same document storage, not being able to 
>> distinguish which is correct. Maybe there's some creative way to deal 
>> with this and still recovered lost form data?
>>
>> -Matthew
>>
>> On Wed, Dec 7, 2011 at 10:49 AM, Charles Hedrick <hedrick at rutgers.edu 
>> <mailto:hedrick at rutgers.edu>> wrote:
>>
>>
>>     On Dec 7, 2011, at 10:41 AM, Zhen Qian wrote:
>>
>>     > Chuck,
>>     >
>>     > I think it has long been a desired feature.
>>     >
>>     > It should be easy to import into Assignment, since it has "save
>>     draft" action in place, for both assignment and assignment
>>     submission objects.
>>     >
>>     > Announcement is tricky, since draft announcement is the one
>>     with open date in the future.
>>
>>     I see that. It's particularly tricky if you're editing an
>>     existing announcement, since you need to save the draft but not
>>     publish it.
>>
>>     > Not sure about Resource tool, since it has different workflows
>>     for different resource types.
>>
>>     That will have the same issue if the document exists.
>>
>>     Yes, I being to see the issues. I'd still like to do something if
>>     we can.
>>
>>     >
>>     > Thanks,
>>     >
>>     > - Zhen
>>     >
>>     > On Dec 7, 2011, at 10:30 AM, Charles Hedrick wrote:
>>     >
>>     >> A couple of years ago we did autosave for tests and quizzes.
>>     It's helped a lot with students losing work. However there are
>>     lots of other tools, many of which would be more directed at
>>     instructors.
>>     >>
>>     >> How would you feel about trying to do a few of the more used
>>     tools for 2.10? Announcements, assignments, page editing in
>>     resources?
>>     >>
>>     >> It's actually fairly easy. The Javascript used for Samigo
>>     should work with minor changes. The main thing is that there
>>     needs to be a "save draft" function that the Javascript can
>>     submit to.
>>     >>
>>     >> _______________________________________________
>>     >> sakai-dev mailing list
>>     >> sakai-dev at collab.sakaiproject.org
>>     <mailto:sakai-dev at collab.sakaiproject.org>
>>     >> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>     >>
>>     >> TO UNSUBSCRIBE: send email to
>>     sakai-dev-unsubscribe at collab.sakaiproject.org
>>     <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org> with a
>>     subject of "unsubscribe"
>>     >>
>>     >>
>>     >
>>
>>     _______________________________________________
>>     sakai-dev mailing list
>>     sakai-dev at collab.sakaiproject.org
>>     <mailto:sakai-dev at collab.sakaiproject.org>
>>     http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>
>>     TO UNSUBSCRIBE: send email to
>>     sakai-dev-unsubscribe at collab.sakaiproject.org
>>     <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org> with a
>>     subject of "unsubscribe"
>>
>>
>> _______________________________________________
>> sakai-dev mailing list
>> sakai-dev at collab.sakaiproject.org 
>> <mailto:sakai-dev at collab.sakaiproject.org>
>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>
>> TO UNSUBSCRIBE: send email to 
>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of 
>> "unsubscribe"
>

-- 
==================================
Adrian Fish
Software Engineer
B66 Management School
Lancaster University
Lancaster
LA1 4YW

http://www.sakaiproject.org
http://confluence.sakaiproject.org/display/YAFT/Yaft
http://confluence.sakaiproject.org/display/CLOG/Home
http://confluence.sakaiproject.org/display/BBB/Home

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20111208/c36445cc/attachment.html 


More information about the sakai-dev mailing list