Forum OpenACS Q&A: RFC: Remake of file-storage

Collapse
Posted by Nima Mazloumi on
Several things that could be improved here:

- UI
- permissions
- webDAV

Has anyone worked on file storage lately?

Any other suggestions?

Collapse
Posted by Hamilton Chua on
Hi Nima,

I'm not sure about permissions and webdav, however, about the UI, I can point you to our ajax file storage interface.

http://www.solutiongrove.info/companyb/files/

Login : UserB
Pass : 123

It's also the same place where you can see the UI of the help system. Just click the "Help" link .

AjaxFS will fall back to the old user interface if javascript is off.

Best,

Hamilton

Collapse
Posted by Malte Sussdorff on
Hamilton, is this version of ajax-file-storage already in HEAD? Furthermore is the help system committed and do you have some documentation on how to include it on the pages?
Collapse
Posted by Hamilton Chua on
Hi Malte,

My target for putting the code on head is end of this week. I am still deliberating whether I should make ajaxhelper a dependency.

It's possible to make it stand alone from ajaxhelper if I were to grab only the relevant javascript and style sheets, minify and then compress. This will result in much lighter code as far as javascript is concerned.

Let me know if you need it sooner.

The help system you see in the demo is UI only. I had originally intended to use it for the help system that Nima wrote but I wasn't able to contact Nima about it. The one in the demo uses a flat file with help text. The system knows which help text to display based on the url.

I can send you a zipped copy of the code if you like.

Best,

Ham

Collapse
Posted by Dario Roig on
Hi Hamilton! We have tested the new interface of files and the contextual aid and seems to us brilliant. The only problem that we have found is that we do not know like donwload or view the files. Are you thinking upload the code in the CVS?

Also we have seen a pair of interesting utilities the bookmarks module and the Profile page. As you obtain that each user has his own blog personal?

Best,
Dario

Collapse
Posted by Nima Mazloumi on
Beautiful work.

Anyone who worked on meaningful permissions and webdav?

Haven't looked at other cms but I could imaging rights like:

create new items
read existing items
update items (modify, new version)
delete items
admin item (permissions)

Any ideas?

It should be possible to set the rights in a way that the following scenarios are supported:

- a user can only read his own items
- a user can upload but not delete an item
- a user can only update her own items
- a user can update but not delete items

and the like.

Currently only read, write and admin are meaningful. If you have write permissions you can delete items of other users in a folder.

The current webdav support doesnt work for microsoft properly. Dave mentioned another module that might be better. Any experience with it?

Collapse
Posted by Nima Mazloumi on
Hamilton: My idea of help system was a too generic usage of acs-lang. I encountered very practical problems like changes to the request processor and questions like categorizing and ordering of help messages. Therefore I didn't pursue that direction any longer.
Collapse
Posted by Hamilton Chua on
Hello Dario,

Try double clicking on the item in the right panel.

If you double click a file it will either download the file if your browser doesn't know how to handle it or open the file.

When a folder is double clicked, it is opened and the tree pane will select the folder you double clicked and reveal its contents on the right panel.

I guess it's not very obvious so I will probably add "Download" when you right click.

Best,

Ham

Collapse
Posted by Brian Fenton on
Hamilton,
wonderful looking work - well done! However, I have the same problem as Dario - I can't download or view the files! Even double-clicking does nothing. I'm running Firefox 2.0 on Windows XP.

thanks
Brian

Collapse
Posted by Hamilton Chua on
Dario and Brian. Thanks for the feedback.

You're both right it wasn't working on that demo. Seems I disabled it for some reason. It should be working again now 😊

Collapse
Posted by Hamilton Chua on
Yes each user has his/her own file storage, blog and bookmark.

The bookmark module is something we developed specifically for a client and it was built using the web blogger package. We've added a couple of things including tagging and the ability to keep private or share bookmarks across communities(or groups) that the user is a member of.

Collapse
Posted by Brian Fenton on
Hi Hamilton,

I still can't get it to work! Sorry. 😊

Brian

Collapse
Posted by Dario Roig on
The problem with download the files is solved, Thanks.
Collapse
Posted by Nima Mazloumi on
Any thoughts about the permission and webdav stuff?
Collapse
Posted by Dave Bauer on
Nima,

Permissions are what you specified

Read == Read
Create == Create
Update/Edit == Write
Delete == Delete
Admin == All of the above

For Webdav, if you use the content repository, you can webdav enable any folder by visiting /webdav-support/ on your web site and checking the folder. There is also a tcl procedure to do this programmatically.

Collapse
Posted by Nima Mazloumi on
I have made a different experience:
write = update,edit,delete
delete = nothing in the context of file storage
create = nothing in the context of file storage

Also scenarios as described are not definable.

Also webdav doesn't work very well with microsoft. it sure is a microsoft issue but that I cannot tell the users. they want it to work properly. thus the question is: has anyone take a deeper look into what is required to be done to get it work smoothly?

Collapse
Posted by Hamilton Chua on
The version of ajaxfs-ui that you see on the demo has bee committed to openacs cvs HEAD along with an updated version of ajaxhelper.
Collapse
Posted by Jose Agustin Lopez Bueno on
Hi, Hamilton!

I am testing ajax-filestorage-ui. I have installed the package rightly but when I open one folder I get the next error:

"Sorry, we encountered an error rendering the tree panel"

and nothing is displayed. In the log I have not any message.
The same in Firefox and IE.
I have download ajax* packages from head.

Do you know where could be the problem, please?

Thanks,
Agustin

Collapse
Posted by Hamilton Chua on
Hi Agustin,

Thanks for downloading and trying out ajaxfs-ui.
Can you double check the mount point for ajaxfs-ui in site-map.

I think it should be ajaxfs2. If it's not mounted as ajaxfs2, can you try to delete it and mount ajax-filestorage-ui as ajaxfs2.

Let me know if that fixes the problem.

Best,

Ham

Hi Hamilton!

Yes, now it is working.

I will like to use that filestorage alternatively
with the old. That will be user election. Is it possible?
One parameter to do that? One flag in the index.adp?

Thanks,
Agustin

Collapse
Posted by Robert Taylor on
we made minor cosmetic differences to file storage as well ... we'll show this soonish unless it's already replicated.
Collapse
Posted by Hamilton Chua on
Hi Agustin,

I'm glad you got it working. My recommendation is to add a parameter in the file storage package (e.g. UseAjaxUi)

Then in the index.tcl and index.adp of your file storage package. You can check for the value of this parameter.

Best,

Hamilton

Hi again!

I have put one toggle in the index.tcl / index.adp for
every user can change the file viewer.

Some ideas I have seen:

-How to "Copy" files and folders?
-Perhaps "Download" for files in file contextual menu?
-Menu contextual for folders (left window) ?
-Drag and drop from file explorer?
-Lost two labels in catalog: File and CopyLink

Thanks for you time!
Agustin