Patch title: Release 94 bulk changes
Abstract:
File: /pliant/appli/pad/database.pli
Key:
    Removed line
    Added line
submodule "/pliant/appli/database.pli"
submodule "/pliant/storage/database.pli"

public

type PadContent
  field Str type
  field Str content
  field Str options

type PadPlanning
  field Str who
  field DateTime when
  field Str duration # something like 3h (3 hours) or 2d (2 days)

type PadPage
  field Str title
  field Str user # who created
  field Str read write # right required to read or edit
  field Set:PadContent content
  field Set:PadPlanning planning

type PadDatabase
  field Set:PadPage page

(gvar Database:PadDatabase pad_database) load "security:/pad2.pdb" mount "/pliant2/pad"


method pad path -> p
  arg Data:PadPage pad ; arg Str p
  var Str id := keyof pad
  p := "data:/pliant/pad/"+(id (max id:len-2 0) 2)+"/"+id+"/"

method pl seconds -> s
  arg Data:PadPlanning pl ; arg Float s
  var Str duration := pl duration
  if (duration parse any (var Int h) "h")
    s := h*3600
  eif (duration parse any (var Int d) "d")
    s := d*86400
  eif (duration parse any (var Int h) "h" (var Int mn))
    s := h*3600+mn*60
  else
    s := 1