Happy !

mikefilonov / WebFileBrowser

Project infos

License MIT
Tags seaside, filesystem
Creation date 2015-02-10
Website http://pillarhub.pharocloud.com/hub/mikefilonov/webfilebrowser

Monticello registration

About WebFileBrowser

Small Seaside application to browse and manage local or network file storages (webdav, ftp).

You may discuss it at PillarHub page of the project: http://pillarhub.pharocloud.com/hub/mikefilonov/webfilebrowser

Demo

Description

The application supposed to be an administrator's tool for managing local or remote filesystems with a browser. The application is written to be an additional Seaside application which you install alongside with your other apps.

This application is especially useful for Pharocloud users who want to download back files from an appliance.

The code is intentionally written as simple as possible so it can be an example of solving most common issues of Seaside file access (ex.: uploading file, given back a server-generated document).

Installation

To install evaluate:

Gofer it
    smalltalkhubUser: 'mikefilonov' project: 'WebFileBrowser';
    configuration;
    loadDevelopment.

Local Files

To register the application that works with a local file-system evaluate the following code:

WebFileBrowser registerAt: 'local' withLocal: '.'

You should be able to see the interface at http://yourserver/local.

Of course, this requires Seaside server to be running. Be sure to start it before checking the browser .

If you want to lock the application in a different folder you can specify it in the command like this:

WebFileBrowser registerAt: 'otherpath' withLocal: '/mnt/universe/'

WebDAV

The following code registers the application with WebDAV driver:

WebFileBrowser registerAt: 'dav' withWebDAV: 'http://user:password@webdavhost/dir'

It is possible to register as many apps on one Seaside as you want so you can manage different filesystems from one Image.

ReadOnly view

You may use ReadOnlyWebFileBrowser to register a read only view on your Filesystem. Commands to register are the same just use the ReadOnlyWebFileBrowser class name instead:

ReadOnlyWebFileBrowser registerAt: 'image' withLocal: '.'

Contribute

Please do not hesitate contributing ideas if you see this app useful.