Hi Gabor, finally found some time to work on this. Should be done in the
next day or so and will post a video here first for review and comments
before making it public (committing).
I'd like for you to send me some text about yourself that I can put on
the blog when writing about this new feature - just anything you would
want readers to know about you. If you could send me that this week I'd
really appreciate it.
Thanks.
On 10/25/12 4:55 PM, Gábor Farkas wrote:
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:
https://docs.google.com/open?id=0B3W14YRqXKCZc0RVSjlPWklka2s
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 <mailto:gabor.farkas@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 <mailto:tsurdilo@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>
> <mailto:tsurdilo@redhat.com>
> To: Gábor Farkas <gabor.farkas(a)doctusoft.com>
> <mailto:gabor.farkas@doctusoft.com>
> CC: jbpm-users(a)lists.jboss.org
> <mailto:jbpm-users@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 <
http://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 list
>> jbpm-users(a)lists.jboss.org <mailto:jbpm-users@lists.jboss.org>
>>
https://lists.jboss.org/mailman/listinfo/jbpm-users
>
>
>
>