Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: assigned Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Comment (by olemis): Done with issues mentioned in comment:19 . I've added a new patch (see updated [comment:9 patch order] ) . It turns off overwrite checkbox if file name is not found in attachments list . I'm proposing the whole solution for review at this point . PS: Should we schedule this ticket for next milestone ? -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:22 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Changes (by olemis): * status: assigned = accepted -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:24 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: gjm Type: enhancement | Status: review Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Changes (by olemis): * status: accepted = review * owner: olemis = gjm -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:25 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: gjm Type: enhancement | Status: review Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Changes (by jdreimann): * owner: jdreimann = gjm -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:20 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: jdreimann Type: enhancement | Status: review Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Comment (by olemis): Well , I refreshed the patch to cope with collisions in order to provide better error handling . Changes consist of - Latest file entry is not hidden on overwrite error - Multiple previous error entries removed on upload success I look forward to your comments . -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:18 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: Type: enhancement | Status: assigned Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Changes (by olemis): * keywords: = attachments inplace html5 * status: needinfo = assigned Comment: I've refreshed previous patches to be applied against r1404963 . Also some more for theme plugin have been added (see [comment:9 patch order] for further details) . They improve current situation by unifying file lists . Enhanced handling for collisions and overwritten has been added in both server-side request handler as well as client side. Replying to [comment:13 jdreimann]: Replying to [comment:11 olemis]: Pending issues - Question: What is it that should happen in the UI after overwriting an existing attachment ? Instead of 'added by [...]' (eg on the ticket page) it should say '**updated** by [...]'. I didn't implement this since I decided to be a little lazy to ensure this is what we want for this to happen . At present the behavior introduced by patches is as follows . If attachment is overwritten (i.e. another file with the same name already exists in the server) then the following transition occur - On clicking upload , once it's done then `template-upload` file row fades out - Then corresponding `template-download` row fades in to replace the former - Previous `template-download` row for initial attachment slides up until it disappears - The later is removed from DOM . It seems to me that such combination is smooth enough and deserves at least to be considered . Question : - We should not remove previous attachment row on error ... isn't it ? - Determine the definitive name of the attachment (e.g. when file of the same name exists but it won't be overwritten) Finally I could figure out how to get this done . After all this been said , this is quite ready ... please review . -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:15 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Changes (by olemis): * owner: = olemis * status: assigned = accepted -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:16 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+--- Reporter: jdreimann| Owner: jdreimann Type: enhancement | Status: review Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: attachments inplace html5 --+--- Changes (by olemis): * owner: olemis = jdreimann * status: accepted = review Comment: Le workflow ... il est fou ! :P I'll explain @ bh-dev ML ;) -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:17 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: Type: enhancement | Status: needinfo Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Changes (by olemis): * owner: olemis = * status: accepted = needinfo -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:12 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: Type: enhancement | Status: needinfo Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Comment (by jdreimann): Replying to [comment:11 olemis]: Pending issues - Question: What is it that should happen in the UI after overwriting an existing attachment ? Instead of 'added by [...]' (eg on the ticket page) it should say '**updated** by [...]'. - Determine the definitive name of the attachment (e.g. when file of the same name exists but it won't be overwritten) If this type of query is possible (Does a file of the same name already exist?), would it also be possible to ''only'' show the {{{[replace file]}}} option when a file with the same name already exists? This should be dealt with in a separate ticket of course, I'm just curious if it's feasible. -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:13 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: Type: enhancement | Status: needinfo Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Comment (by olemis): Replying to [comment:13 jdreimann]: Replying to [comment:11 olemis]: Pending issues - Question: What is it that should happen in the UI after overwriting an existing attachment ? Instead of 'added by [...]' (eg on the ticket page) it should say '**updated** by [...]'. I c . I'll need to make some more changes to the current implementation and figure out how to get this done using jQuery File Upload plugin extension points . I think highlighting «updated» word might be useful to identify recent file file uploads . What du you think ? - Determine the definitive name of the attachment (e.g. when file of the same name exists but it won't be overwritten) If this type of query is possible (Does a file of the same name already exist?), it's possible ... would it also be possible to ''only'' show the {{{[replace file]}}} option when a file with the same name already exists? This should be dealt with in a separate ticket of course, I'm just curious if it's feasible. ... but I'd not recommend to do so due to the characteristics of web applications . I mean, maybe there was no other file with the same name at file selection time (i.e. when upload form fields are added dynamically) , but it does exist later when file is uploaded onto the server . Its possible that such race conditions will happen in practice . -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:14 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Comment (by olemis): After some time figuring out how to implement AJAX file uploads backend in such a way that the most could be reused out of Trac implementation , now I think I've finally got something that deserves to be incorporated into next release . New patch has been attached and previous ones have been refreshed . Patch order for theme plugin is {{{ #!sh $ hg qapplied t195/t195_r1398842_jquery_file_upload.diff t195/t195_r1398842_inplace_attach_form_webui.diff t195/t195_r1398842_inplace_attach_form_dnd.diff t195/t195_r1398842_inplace_attach_form_uploads.diff }}} Change log follows - Correct names for input fields (rather than those in jQFU demo) - Added «replace attachment» checkbox - Sending sequential attachment POST requests onto the server - Initial working version of in-place attachment uploads - Toggle in-place attachments form on/off by disabling component `bhtheme.attachment.InplaceAttachmentModule` - File attributes displayed after upload (i.e. no more TODO labels). - Enhanced error notification - Client-side checking of min/max file size constraints - Smaller upload progress bar Pending issues - Question: What is it that should happen in the UI after overwriting an existing attachment ? - Determine the definitive name of the attachment (e.g. when file of the same name exists but it won't be overwritten) I look forward to know of your suggestions to continue working on this and finally close this ticket . -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:11 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Comment (by olemis): Patches refreshed to implement jdreimann suggestions posted to bh-dev ^[# citation needed]^ . -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:10 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Comment (by olemis): I've attached some patches implementing this functionality , but not finished yet . I explain the details below Trac patch It's necessary to upgrade jquery (1.8.2) and jquery-ui (1.9.0) to make this work . Patch order is as follows {{{ #!sh $ hg qapplied t195/t195_r1398968_jquery_1.8.2.diff t195/t195_r1398968_jquery_ui_1.9.0.diff }}} Dasboard Consists of upgrades towards Bootstrap 2.1.1 (see #220) and adding generic dependencies , which are - [https://github.com/blueimp/jQuery-File-Upload/wiki/Plugin-files Blueimp's iframe ajax transport] ( MIT license ) - [https://github.com/blueimp/jQuery-File-Upload/wiki/Plugin-files Blueimp's js templates engine] Patch order {{{ #!sh $ hg qapplied t220/t220_r1397115_bootstrap_2.1.1.diff t195/t195_r1398977_jquery_file_upload_deps_generic.diff }}} Theme Patches implementing each feature step by step . First incorporating required library files , next adding multifile upload form , and finally (at least for the moment) supporting drag and drop and drop zone effects . The later patch is not quite yet ready but is functional enough to deserve early publication . Main difficulties at the moment are related to hidding drop zone overlay once cursor leaves drop area , or on canceled uploads . Feedback is welcome . Patch order is {{{ #!sh $ hg qapplied t195/t195_r1398842_jquery_file_upload.diff t195/t195_r1398842_inplace_attach_form_webui.diff t195/t195_r1398842_inplace_attach_form_dnd.diff }}} Beyond this it's necessary to finish the backend handling AJAX file transfers ... and further minor details . -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:9 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Comment (by gjm): Replying to [comment:7 jdreimann]: Replying to [comment:6 olemis]: Feedback is welcome . Thanks Olemis, looking good! I would remove some of the buttons though: 1. **Start upload** - I believe dragging a file onto the page or selecting it in the file dialogue is enough of an indication that the user wants to upload it. 1. **Cancel upload** - This should be done individually via the {{{ x Cancel }}} action you've already placed next to the upload indicator. 1. **Clear failures** - Again, this should be done individually. Failures matter, especially in these low volume transactions (usually someone will attach one or two files only); not the situation in which I would expect batch clearing to be helpful. 1. **Toggle all** - I assume this is related to the previous three buttons? Just to clarify: in the description field, what does the button at the end do? I can't quite make it out from the screenshot. In the mockup it was meant to confirm the input to save it, or cancel to clear the changes to them based on the inline editing discussions on the mailing list recently. Note: I think that we should discuss this on bh-dev so I will reply to the subsequent email that this comment creates for us to continue there. Actually, olemis has a point. I didn't spot that issue as I did not understand that jdriemann wanted the downloads to start at the earliest opportunity. My concern here is that sometimes people are going to find that they are uploading files that they did not mean to. I realise that jdreimann's suggested drop area reduces the likelihood that a file will be dropped accidentally when the drag action was meant for another location, but mistakes will still happen just from selecting the wrong file. I would suggest that making sure it is possible to confirm all with a single button click would be enough to reduce inconvenience here - and I am not suggesting we should have an additional are you sure after that. Finally, even if my reasoning above is a bit too protectionist, immediate upload certainly seems to me to be inconsistent with the conclusions I believe we have come to about inline editing on the same page. -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:8 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker
Re: [Apache Bloodhound] #195: Attach file form à la GMail (was: Make Attach file dialogue a popover)
#195: Attach file form à la GMail --+-- Reporter: jdreimann| Owner: olemis Type: enhancement | Status: accepted Priority: major| Milestone: Component: ui design|Version: Resolution: | Keywords: --+-- Changes (by olemis): * status: new = accepted * owner: nobody = olemis Old description: Current clicking 'Attach file' on wiki or ticket pages takes the user to a new page offering only three things: - Choose file button - Description field - Checkbox whether to replace file with the same name Once confirmed only single line confirmation is shown stating that the file has been added. I believe users would be better served by having this interaction in a [http://twitter.github.com/bootstrap/javascript.html#popovers popover], akin to the Quick Ticket one. ,, ... via ''Bloodhound'' quick create ticket dialog,, New description: Current clicking 'Attach file' on wiki or ticket pages takes the user to a new page offering only three things: - Choose file button - Description field - Checkbox whether to replace file with the same name Once confirmed only single line confirmation is shown stating that the file has been added. ~~ I believe users would be better served by having this interaction in a [http://twitter.github.com/bootstrap/javascript.html#popovers popover], akin to the Quick Ticket one. ~~ Something like GMail or Google+ attachments has been suggested indeed in attached mockup. ,, ... via ''Bloodhound'' quick create ticket dialog,, -- -- Ticket URL: https://issues.apache.org/bloodhound/ticket/195#comment:5 Apache Bloodhound https://issues.apache.org/bloodhound/ The Apache Bloodhound (incubating) issue tracker