[# tag: ewok admin view page #] [! use Ewok::Config; use Ewok::Authz qw(:common); use File::Basename; !] [- Execute({ inputfile => 'util.epl', import => 1 }); $req = shift; $uri = $fdat{p}; $fs_file = $req_rec->lookup_uri($uri)->filename; $filename = basename($uri); $authz = authzGetUserHash($req, $fs_file); $Config = get_config(); -] ewok: view [+ $uri +] [$ if (! ref $authz || ! $authz->{admin}) $] [- errors("Error: access forbidden.") -] [$ elsif (! $Config->{EWOK_RESTRICTED_OBJECTS}->{$filename} && $filename !~ m/\.meta$/) $] [- errors("Error: '$filename' is an invalid object.") -] [$ elsif (! -f $fs_file) $] [- errors("Error: '$uri' does not exist.") -] [$ else $] [- $data = ''; if (! open FILE, "<", $fs_file) { errors("Error: unable to open $uri for read: $!"); } else { { local $/; $data = ; } close FILE; } -]
[+ $data +]
[$ endif $]