aboutsummaryrefslogtreecommitdiff
path: root/src/server/Model/Message.hs
diff options
context:
space:
mode:
authorJoris Guyonvarch2015-08-10 23:30:31 +0200
committerJoris Guyonvarch2015-08-10 23:30:31 +0200
commita3bab4f2a0cc8a6a95753dc91d8e862f40c80dcc (patch)
tree3f8083a4f35fa959fc1a80479432c3b78a55e09e /src/server/Model/Message.hs
parentf860b59644e84b84b6d7b4af309161ca7c5499ee (diff)
downloadbudget-a3bab4f2a0cc8a6a95753dc91d8e862f40c80dcc.tar.gz
budget-a3bab4f2a0cc8a6a95753dc91d8e862f40c80dcc.tar.bz2
budget-a3bab4f2a0cc8a6a95753dc91d8e862f40c80dcc.zip
Embedding messages into the page
Diffstat (limited to 'src/server/Model/Message.hs')
-rw-r--r--src/server/Model/Message.hs33
1 files changed, 23 insertions, 10 deletions
diff --git a/src/server/Model/Message.hs b/src/server/Model/Message.hs
index d84aaa9..8475740 100644
--- a/src/server/Model/Message.hs
+++ b/src/server/Model/Message.hs
@@ -1,16 +1,29 @@
-{-# LANGUAGE DeriveGeneric #-}
-
module Model.Message
- ( Message(..)
+ ( getMessage
+ , getVarMessage
+ , getTranslations
) where
-import Data.Aeson
import Data.Text (Text)
-import GHC.Generics
+import qualified Data.Text as T
+
+import Model.Message.Key (Key)
+import Model.Message.Lang
+import Model.Message.Translations (getNonFormattedMessage)
+import Model.Message.Parts
+
+import Model.Json.Translations
+import Model.Json.Translation
+
+getMessage :: Key -> Text
+getMessage = getVarMessage []
+
+getVarMessage :: [Text] -> Key -> Text
+getVarMessage values key =
+ replaceParts values (getParts (getNonFormattedMessage lang key))
-data Message = Message
- { message :: Text
- } deriving (Show, Generic)
+getTranslations :: Translations
+getTranslations = Translations (map getTranslation [minBound..])
-instance FromJSON Message
-instance ToJSON Message
+getTranslation :: Key -> Translation
+getTranslation key = Translation (T.pack . show $ key) (getNonFormattedMessage lang key)