module Flickr.MachineTags where
import Flickr.Monad
import Flickr.Types
import Flickr.Types.Import
import Control.Monad
getNamespaces :: Maybe String
-> FM (NameContext, [Namespace])
getNamespaces mbPred =
flickTranslate toNamespaceList $
flickrCall "flickr.machinetags.getNamespaces"
(mbArg "predicate" mbPred [])
getPairs :: Maybe String
-> Maybe String
-> FM (ResContext MachineTagPair, [MachineTagPair])
getPairs mbNS mbPred =
flickTranslate toPairList $
flickrCall "flickr.machinetags.getPairs"
(mbArg "predicate" mbPred $
mbArg "namespace" mbNS [])
getPredicates :: Maybe String -> FM (ResContext MachineTagPred, [MachineTagPred])
getPredicates mbNS =
flickTranslate toPredList $
flickrCall "flickr.machinetags.getPredicates"
(mbArg "namespace" mbNS [])
getValues :: String -> String -> FM (ResContext MachineTag, [MachineTag])
getValues ns pre = liftM (\ (x,xs) -> (x, map (\ p -> p{mTagPredicate=pre,mTagNamespace=ns}) xs)) $
flickTranslate toMachineTagList $
flickrCall "flickr.machinetags.getValues"
[ ("namespace", ns)
, ("predicate", pre)
]