module MameYa
    ( main
    , help
    , version
    ) where

import System.Environment

main :: IO ()
main = do
    args <- getArgs
    case args of
        ["init",dirName] -> putStrLn ("Create new blog in" ++ dirName)
        ["server"] -> putStrLn "Startup server"
        ["new",fileName] -> putStrLn ("Create new post as" ++ fileName)
        ["list"] -> putStrLn "Get list of posts"
        ["generate"] -> putStrLn "Generate your blog"
        ["deploy"] -> putStrLn "Deploy your blog"
        ["version"] -> version
        ["help"] -> help
        _ -> help

help :: IO ()
help = do
    self <- getProgName
    putStr . unlines $
        concat ["Usage: ", self, " <COMMAND>"] :
        "Commands:" :
        "  init <dirName>               Setup your blog in dirName" :
        "  server                       Startup local server for preview blog" :
        "  new <fileName>               Create new post" :
        "  list                         Get list of all posts" :
        "  generate                     Generate blog" :
        "  deploy                       Deploy blog with your script" :
        "  version                      Print version of mameya" :
        "  help                         Print this message" :
        []

version :: IO ()
version = do
    self <- getProgName
    putStrLn (self ++ " v0.2.0")