o:value("multifilesystem",translate("Multiple files on filesystem"))
o.default=""
o.rmempty=true
o=s:option(Value,"filesystem_folder",translate("Folder"),translate("Folder in which to store collections"))
o:depends("type","")
o:depends("type","multifilesystem")
o.rmempty=true
o.placeholder="/srv/radicale2/data"
o=s:option(Flag,"filesystem_locking",translate("Use File Locks"),translate("Prevent other instances or processes from modifying collections while in use"))
o:depends("type","")
o:depends("type","multifilesystem")
o.rmempty=true
o.default=o.enabled
o=s:option(Value,"max_sync_token_age",translate("Max Sync Token Age"),translate("Delete sync token that are older (seconds)"))
o:depends("type","")
o:depends("type","multifilesystem")
o.rmempty=true
o.placeholder=2592000
o.datatype="uinteger"
o=s:option(Flag,"filesystem_close_lock_file",translate("Close Lock File"),translate("Close the lock file when no more clients are waiting"))
o:depends("type","")
o:depends("type","multifilesystem")
o.rmempty=true
o.default=o.disabled
o=s:option(Value,"hook",translate("Hook"),translate("Command that is run after changes to storage"))