module namespace rev="http://exist-db.org/xquery/admin-interface/revisions";
declare namespace xdb="http://exist-db.org/xquery/xmldb";
import module namespace v="http://exist-db.org/versioning";
declare namespace date="http://exist-db.org/xquery/datetime";
declare function rev:main() as element()
{
let $resource := request:get-parameter("resource", ())
return
Revisions for resource {xdb:decode-uri(xs:anyURI($resource))}
Revision |
Date |
User |
Actions |
{rev:display-revisions($resource)}
};
declare function rev:display-revisions($resource as xs:string) {
let $doc := doc($resource)
for $version in v:versions($doc)
let $rev := $version/v:properties/v:revision/text()
return (
{$rev} |
{date:format-dateTime($version/v:properties/v:date,"yyyy-MM-dd HH:mm:ss")} |
{$version/v:properties/v:user/text()} |
Restore
|
Diff
|
Annotate
|
,
|
)
};