(: : Copyright (c) 2004 raff@aromatic.org : original source: xfaqtor (see following copyright) : : : Copyright (c) 2004 Mark Logic Corporation : : Licensed under the Apache License, Version 2.0 (the "License"); : you may not use this file except in compliance with the License. : You may obtain a copy of the License at : : http://www.apache.org/licenses/LICENSE-2.0 : : Unless required by applicable law or agreed to in writing, software : distributed under the License is distributed on an "AS IS" BASIS, : WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. : See the License for the specific language governing permissions and : limitations under the License. : : The use of the Apache License does not indicate that this project is : affiliated with the Apache Software Foundation. :) import module "http://www.w3.org/2003/05/xpath-functions" at "xqlog-lib.xqy" import module "http://www.w3.org/2003/05/xpath-functions" at "xqlog-display.xqy" if (not(is-login())) then xdmp:redirect-response("login.xqy") else xdmp:set-response-content-type("text/html"), {get-title()}

Edit Reply

{ let $repid := xdmp:get-request-field("repid") let $text := xdmp:get-request-field("text") let $state := xdmp:get-request-field("state", "") let $cancel := xdmp:get-request-field("cancel") return (: Do some input data checking :) if ($cancel) then xdmp:redirect-response("admin.xqy") else if ($repid = "") then
The 'repid' parameter is missing
{ print-go-home() }
else if (not($repid castable as xs:integer)) then
The 'repid' parameter must be an integer
{ print-go-admin() }
else if (normalize-space($text) = "") then
No reply text provided
{ print-go-admin() }
else if (not($state = ("submitted", "live", "dead"))) then
State '{$state}' unknown
{ print-go-admin() }
else let $reply := get-reply(xs:integer($repid)) return if (empty($reply)) then
Reply id '{ $repid }' unknown
{ print-go-admin() }
else let $chg := change-reply($reply, $text, $state) return
Your changes have been made.
{ print-go-admin() }
}