Beyond just allowing one application to save documents to another, OpenSAM makes file system interaction as configurable, automatic, and intuitive as possible for the user. This lessens the training required and minimizes the mistakes a user might make within a broad Web 2.0 mashup.
The typical scenario in OpenSAM is browsing to a document within one application and opening it within another. The following CGI parameters support this, as well as opening and creating sets of documents.
|
Table 5.1 Document Load CGI Parameters The values for these parameters are URIs that will appear within a WebDAV request to a Home Application. |
|
|
new |
Specifies a document template to create a new Untitled document from. |
|
new2...newN |
Specifies additional document templates to
create new Untitled2 ... UntitledN documents from. |
|
open |
Specifies a document path and filename to load for viewing or editing. |
|
open2...openN |
Specifies additional documents to load for viewing or editing. Not all Productivity Applications support editing multiple documents within a single session. |
|
view |
Specifies a document to open in view-only or presentation mode. |
|
view2...viewN |
Specifies additional documents to open in view-only or presentation mode. Not all Productivity Applications support viewing multiple documents within a single session. |
|
newSaveAsFolder[N] |
Provides the default folder displayed when the user clicks the Save button for the Untitled[N] document. |
|
newSaveAsFileName[N] |
Provides the default file name to fill in when the user clicks the Save button for the Untitled[N] document. |
|
newSaveAsType[N] |
Provides the default save-as document type to select when the user clicks the Save button for the Untitled[N] document. The save-as type is specified as a file extension without the dot (e.g. doc or pdf), or as a mime-type. |
|
openFromFolder |
Provides the default folder to display in the dialog box when the user clicks the Open button. This would typically be the folder they are working in within the Productivity Application. |
An integrator can meta-customize a Home Application's use of these CGI parameters to create an almost completely automatic document creation, name, location, and type managed system. The specification of newSaveAsFolder, newSaveAsFileName, and newSaveAsType provide the "File Context."
Users are accustomed to browsing their entire desktop file system within File New, File Save, Insert Picture, ... dialog boxes. OpenSAM's WebDAV access to a Home Application's file system supports this as well. You can choose to implement varying levels and types of browsing within your Productivity Application. See also Document Veneer for additional discussion of how to structure your folder and file hierarchy.
For example, the iNetWord File Save As... dialog box browses a Home Application's files as follows:

Figure 5.1 Save As Dialog Box
The IFRAME is served by iNetWord's server which queries the Home Application's files and folders via WebDAV. By relaying the files and folders list through iNetWord's server, it can present the files and features UI similarly to the way they are presented for files stored locally or on other remote systems such as FTP. Users find it useful to have file status icons, folders, folder creation, and other file and folder features available directly within file dialog boxes.
The same IFRAME serving code is used in iNetWord's File New, File Open, Insert Picture, and Insert Link dialog boxes. Such code re-use simplifies and unifies the task of adding OpenSAM to a Productivity Application.
Recall that users in an OpenSAM mashup may be using multiple Home Applications simultaneously (see Heterogeneous Application Mashup). To clearly identify the files and folders as residing on a particular Home Application, the HOME APP ICON at the left in the Save To selector is provided by the Home Application via CGI parameters:
|
Table 5.2 Home Application Identification CGI Parameters |
|
|
StorageBrandIcon |
The URL of an icon to display to identify the Home Application. Icons should be .png with transparent backgrounds (including antialiased alpha channel around non-linear edges) so they can be placed on top of any color background. |
|
StorageBrandName |
The name by which the user identifies the Home Application. |
Copyright © 2006-2007, the authors.