[Fencommits] fenserve: remove actions for now
Benja Fallenstein
benja.fallenstein at gmail.com
Fri May 25 17:16:15 EEST 2007
Fri May 25 17:16:06 EEST 2007 Benja Fallenstein <benja.fallenstein at gmail.com>
* remove actions for now
diff -rN -u old-fenserve/fendata/Main.hs new-fenserve/fendata/Main.hs
--- old-fenserve/fendata/Main.hs 2007-05-25 17:16:15.000000000 +0300
+++ new-fenserve/fendata/Main.hs 2007-05-25 17:16:15.000000000 +0300
@@ -145,14 +145,6 @@
hidden "name" name' +++
button ("[Save as "++name'++"]")+++" "+++mdot+++" "
-potionPost exp args s = (let ?state=s; ?link=True; ?name=Nothing in
- renderExp exp id action +++ hr +++ HTML r
- , s') where
- env = Map.fromList $ zip [0..length args-1] args
- (r,s') = case runStateT (runExp env exp) s of
- [result] -> result
- xs -> ("Wrong number of results: "++show xs, s)
-
edit :: (Exp,Exp,Type,Maybe String) -> MyState -> (HTML, MyState)
edit (exp,old@(Concat olds),ty,name) s = let ?state = s; ?link = False; ?name=name in
(formG "editTemplate" $
@@ -290,12 +282,8 @@
main = stdHTTP [ debugFilter
, h ["potion"] GET $ ok $ \() -> run $
\(exp,args,name) s -> let ?root = "" in potionGet exp args name s
- , h ["potion"] POST $ ok $ \() -> run $
- \(exp,args,name::Maybe String) s -> let ?root = "" in potionPost exp args s
, h (Prefix ["potion"]) GET $ ok $ \(fun:args) -> run $
\(_::[String],name) s -> let ?root = concat (take (1 + length args) $ repeat "../") in potionGet (Call fun (map (Just . Str) args)) args name s
- , h (Prefix ["potion"]) POST $ ok $ \[fun] -> run $
- \(args,name::Maybe String) s -> let ?root = "../" in potionPost (Call fun (map (Just . Str) args)) args s
, h ["edit"] GET $ ok $ \() -> run edit
, h ["editTemplate"] GET $ seeOther $ \() -> runRedirect editTemplate
, h ["makefun"] GET $ ok $ \() -> run makeFun
diff -rN -u old-fenserve/fendata/PotionTypes.hs new-fenserve/fendata/PotionTypes.hs
--- old-fenserve/fendata/PotionTypes.hs 2007-05-25 17:16:15.000000000 +0300
+++ new-fenserve/fendata/PotionTypes.hs 2007-05-25 17:16:15.000000000 +0300
@@ -16,7 +16,6 @@
data Fun = Fun [Type] [HTML] Exp
| FieldFun String String
| CatFun String
- | AddItemFun String [String]
deriving (Read, Show, Typeable, Data, Eq, Ord)
data Exp = Call String [Maybe Exp]
diff -rN -u old-fenserve/fendata/Potions.hs new-fenserve/fendata/Potions.hs
--- old-fenserve/fendata/Potions.hs 2007-05-25 17:16:15.000000000 +0300
+++ new-fenserve/fendata/Potions.hs 2007-05-25 17:16:15.000000000 +0300
@@ -16,7 +16,6 @@
catType name = Type ("which " ++ name ++ "?")
string = Type "which text?"
-action = Type "Do what?"
readFun :: MyState -> String -> Fun
readFun s n | ((r,""):_) <- reads n = r
@@ -25,20 +24,14 @@
funType (Fun _ _ exp) = expType exp
funType (FieldFun _ _) = string
funType (CatFun cat) = catType cat
-funType (AddItemFun _ _) = action
funTypes (Fun ts _ _) = ts
funTypes (FieldFun cat _) = [catType cat]
funTypes (CatFun _) = []
-funTypes (AddItemFun _ fs) = map (const string) fs
funParts (Fun _ ps _) = ps
funParts (FieldFun _ name) = map toHTML ["the "++name++" of ", ""]
funParts (CatFun cat) = map toHTML ["all the " ++ cat ++ "s in the system"]
-funParts (AddItemFun cat fs) = map toHTML $
- ["Add a new "++cat++" with "] ++
- [" as the "++f++", and " | f <- init fs] ++
- [" as the "++last fs++"."]
for :: [a] -> (a -> b) -> [b]
for = flip map
@@ -130,12 +123,4 @@
runFun (CatFun cat) [] = do
state <- get
msum [return $ show n | (n, Item _ cs) <- Map.toList (stateItems state), cat `Set.member` cs]
-runFun (AddItemFun cat fields) vals = do
- s <- get; let items = stateItems s
- let catFs = stateSchema s Map.! cat
- m = Map.fromList $ [(f,"") | f <- catFs] ++ zip fields vals
- item = Item m (Set.singleton cat)
- put s { stateItems = Map.insert (nextId items) item items }
- return "Done."
-
More information about the Fencommits
mailing list