Hi,
So, I cleaned it up a bit and put some comments.
I guess it's not nice to attach files on a public mailing list, so I
uploaded a package here:
If you unzip the folder somewhere, the editor.html can be loaded statically
from the file. I have this folder so that I can test some changes faster,
without actually starting the editor.
To install it in the actual editor, you have to put the localhistory.js on
the web root (next to editor.html), and add this fragment to the
editor.html (right after div class='processdata' for example, in the body
element)
<div id='lsDiv' title='LocalHistory for teh LuLz'
style='position:fixed;top:0px;left:0px;z-index:10000; width: 20px; height:
20px'>
</div>
<div id='lhContainerDiv'
style='position:fixed;top:32px;left:0px;z-index:10000;width:800px;height:512px;overflow:auto;visibility:hidden'>
<div id='gridDiv'/>
<span id='lhClearButton'/>
</div>
<script src="/designer/localhistory.js"
type="text/javascript">
</script>
This will put that transparent white box on the top left corner of the
editor frame. This 'solution' will be replaced by properly registering
localhistory as a plugin of course :)
There are some TODO-s and questions in the localhistory.js .
Feedback is welcome :) I'll go on cleaning this up so that this can
integrate nicely to the editor.
cheers,
Gabor
On Thu, Oct 25, 2012 at 9:20 PM, Gábor Farkas <gabor.farkas(a)doctusoft.com>wrote:
Hi,
Thanks for the ping, yes, I'd still like to contribute, it's just that the
company had some other priorities these weeks, but i'll find some time to
clean things up a bit.
There are some questions still:
- *accessing*: I didn't yet scan the source to check how to put an
icon in the toolbar to display the local history panel. I guess the best
approach will be to make this localhistory thing a plugin, so I can start
by taking the servicerepo plugin as an example. For the prototype, I
modified the editor.html and added a transparent div, and the panel shows
up by clicking on that.
- *when to create an entry*: currently I check the json source of the
model every 10 seconds, and if it's changed, I create an entry. Maybe this
should be extended by somehow grouping these entries. For example, if the
user keeps editing actively for two minutes, I keep only one entry,
updating that entry every 10 seconds. But if the editing period is longer
than two minutes for example, I keep one entry for each two minutes block.
If the user edits for 30 seconds, then waits two minutes, then edits again,
two entries will be created again. Something like this might be useful to
keep the history reasonably small, but still quite useful and real-time.
- *when entries expire*: entries don't yet expire, so the local
storage can get full after some time. You can delete all entries at once. I
think we should add the possibility to delete entries individually, and to
configure that after a specific time, entries are autmatically deleted. Or
maybe, for entries older than one hour, we keep entries only in 5 minutes
granularity, after two hours, every 1 hours, and one entry for each day
older than 24 hours. Or maybe this is unnecessary for our scope ...
What do you think the best way would be to share the prototype with you?
Well, maybe just emailing the files will be enough for now.
I'll try to clean up the source tonight and send you an initial version,
so that you can take a look and try.
Thanks
Gabor
On Thu, Oct 25, 2012 at 3:01 PM, Tihomir Surdilovic <tsurdilo(a)redhat.com>wrote:
> Hi Gabor, are you still wanting to contribute your work? Just checking
> in case you are waiting on anything from me in order to start.
>
> Thanks.
>
> On 10/3/12 11:32 AM, Tihomir Surdilovic wrote:
>
> Forwarding to jbpm-dev list as users list is not being monitored.
>
>
> -------- Original Message -------- Subject: Re: [jbpm-users] local
> history for the jbpm web editor Date: Wed, 03 Oct 2012 11:23:34 -0400 From:
> Tihomir Surdilovic <tsurdilo(a)redhat.com> <tsurdilo(a)redhat.com> To:
Gábor
> Farkas <gabor.farkas(a)doctusoft.com> <gabor.farkas(a)doctusoft.com> CC:
> jbpm-users(a)lists.jboss.org
>
> Hi Gabor - that looks impressive and useful for the community. I'd be
> happy to work with you to incorporate this functionality into the Designer
> codebase and promote you as community contributor for jBPM. Let's chat on
> IRC (#jbpm or #jbpmdev on
irc.freenode.net).
>
> Tihomir
>
> On 10/3/12 10:42 AM, Gábor Farkas wrote:
>
> Hello,
> We've created a prototype for a local history functionality for the
> jbpm-designer, we needed it for multiple reasons. It stores data in the
> browser localStorage, so it also serves a bit like 'undo after save'. It
> checks the json representation of the process every minute and if it
> differs, it creates a new local history entry, including a thumbnailed
> screenshot. It's available after browser restart too, so if you
> accidentally close the browser, you can still restore your work.
> Here's a small screenshot.
>
https://docs.google.com/open?id=0Bxw7L2kmpno8RkJUY3Zjd0I4Mlk
>
> Needs quite much elaboration, but it's already functional and useful
> for our needs.
> If you find it interesting, we'd be happy to share it with the community.
>
> regards,
> Gabor Farkas
>
>
> _______________________________________________
> jbpm-users mailing
listjbpm-users@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/jbpm-users
>
>
>
>
>
>
>