# README
The vaults page
The vaults is a major part of FreePDM. It is primarily a storage of files that are stored into the server. The primary goals are to import / export files, the revision of files, moving -, copying and renaming of files, and all with access control. To make this happen you want to check-out and check-in of files, so that others know that you checked out a file and can't modify / edit the file without notifying you. The filesystem use directories, just like ordinary directories, to organize the files. The storage of files allows that you can also open a previous file.
Todo:
- Add a filesystem (directories)
- Allow importing of files
- Allow showing and editing files with SMB
- Renaming files
- Copying files
- Moving files
- Renaming directories
- Copying directories
- Dealing with versions.
- Disable / enable versioned files (mode 0700)
- Dealing with checkin and checkout.
- Dealing with users.
- Reporting with json (dir list, properties, etc.)
- Logging the activities.
- Checks about checkout during file operations (rename, copy) and new versions.
- Make it working for multi-user, multi-vaults
- Checks about CheckIn comments (descr and longDescr)
- Checks about the VER.txt in file versions
- Change directory and file structure to Read Only for security. That way no accidental issues can happen.
- Move the vaultsdata dir to the root of the vault dir under
.data
and the files are read only. - Set the owner of the vault root dir to
root:sambashare
. This means that some apps needssudo
.
# Functions
ListVaults returns the vault names.
Initializes the FileDirectory struct.
No description provided by the author
No description provided by the author
Constructor.
Root returns the root of the vaults directory.
RootData returns the root of the vaultsdata directory.
Splits a file with its base and extension.
# Constants
Some handy file names.
No description provided by the author
Some handy file names.
Some handy file names.
Some handy file names.
# Structs
File Directory related struct.
File Index Files in the root.
The FileInfo struct.
The FileList is a struct with five fields: * The container number.
The File Properties.
File System related Class.
File versions struct
field: 'number', an increment field: 'pretty' means a version presentation, such as A.1, 2.5.0, 4.0, 3 or A.
LockedIndex is the list of locked files.