-- #! /usr/local/pub-bkb/bin/runhugs -- -- PI3 - LV-Evaluation -- Antwortskript -- module Main(main) where import CGI import Maybe(fromMaybe) import EvalData import IO extractAnswers :: [(Name, Value)]-> Questionaire extractAnswers e = Q { syl_alg = getInt "sylalg", syl_fm = getInt "sylfm", syl_sys = getInt "sylsys", syl_remarks = getString "sylremarks", ex_hard = getInt "exhard", ex_fave = getInt "exfave", ex_worst = getInt "exworst", ex_remarks = getString "exremarks", lect = getInt "lect", slides = getInt "slides", tutor = getInt "tutor", teach_remarks = getString "teachremarks", total = getInt "total", gen_remarks = getString "genremark" } where getInt fn = read (fromMaybe "0" (lookup fn e)) getString fn = fromMaybe "" (lookup fn e) writeQ :: Questionaire -> IO () writeQ q = do fh <- openFile resultsFilePath AppendMode hPutStrLn fh (show q) hClose fh process :: [(Name, Value)]-> IO HTML process env = do writeQ (extractAnswers env) return (page "Danke" [] [br, br, h3 "Vielen Danke für Ihre Mühe.", br, format "i" "Mit freundlichen Grüßen, ", br, href "http://www.informatik.uni-bremen.de/~cxl" [prose "Ihr Kursbewertungsbetreuuer."]]) main :: IO () main = wrapper (\e-> process e >>= return. Content)