aboutsummaryrefslogtreecommitdiff
path: root/src/client/elm/LoggedIn/Category
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/elm/LoggedIn/Category')
-rw-r--r--src/client/elm/LoggedIn/Category/Model.elm36
-rw-r--r--src/client/elm/LoggedIn/Category/Msg.elm9
-rw-r--r--src/client/elm/LoggedIn/Category/Table/View.elm124
-rw-r--r--src/client/elm/LoggedIn/Category/Update.elm24
-rw-r--r--src/client/elm/LoggedIn/Category/View.elm35
5 files changed, 0 insertions, 228 deletions
diff --git a/src/client/elm/LoggedIn/Category/Model.elm b/src/client/elm/LoggedIn/Category/Model.elm
deleted file mode 100644
index 7092fc4..0000000
--- a/src/client/elm/LoggedIn/Category/Model.elm
+++ /dev/null
@@ -1,36 +0,0 @@
-module LoggedIn.Category.Model exposing
- ( Model
- , AddCategory
- , init
- , initForm
- , validation
- )
-
-import Date exposing (Date)
-
-import Form exposing (Form)
-import Form.Validate as Validate exposing (Validation)
-import Validation
-
-type alias Model =
- { addCategory : Form String AddCategory
- }
-
-type alias AddCategory =
- { amount : Int
- , date : Date
- }
-
-init : Model
-init =
- { addCategory = initForm
- }
-
-initForm : Form String AddCategory
-initForm = Form.initial [] validation
-
-validation : Validation String AddCategory
-validation =
- Validate.map2 AddCategory
- (Validate.field "amount" (Validate.int |> Validate.andThen (Validate.minInt 1)))
- (Validate.field "date" Validation.date)
diff --git a/src/client/elm/LoggedIn/Category/Msg.elm b/src/client/elm/LoggedIn/Category/Msg.elm
deleted file mode 100644
index 3184297..0000000
--- a/src/client/elm/LoggedIn/Category/Msg.elm
+++ /dev/null
@@ -1,9 +0,0 @@
-module LoggedIn.Category.Msg exposing
- ( Msg(..)
- )
-
-import Form exposing (Form)
-
-type Msg =
- NoOp
- | AddCategoryMsg Form.Msg
diff --git a/src/client/elm/LoggedIn/Category/Table/View.elm b/src/client/elm/LoggedIn/Category/Table/View.elm
deleted file mode 100644
index fa7a7b1..0000000
--- a/src/client/elm/LoggedIn/Category/Table/View.elm
+++ /dev/null
@@ -1,124 +0,0 @@
-module LoggedIn.Category.Table.View exposing
- ( view
- )
-
-import Dict exposing (..)
-import Date exposing (Date)
-import String exposing (append)
-
-import FontAwesome
-import View.Color as Color
-
-import Html exposing (..)
-import Html.Attributes exposing (..)
-import Html.Events exposing (..)
-
-import Dialog
-import Dialog.AddCategory.Model as AddCategory
-import Dialog.AddCategory.View as AddCategory
-
-import Tooltip
-
-import Msg exposing (Msg)
-
-import LoggedData exposing (LoggedData)
-
-import LoggedIn.Msg as LoggedInMsg
-
-import LoggedIn.Category.Model as Category
-import View.Date as Date
-import LoggedIn.View.Format as Format
-
-import Model.User exposing (getUserName)
-import Model.Category as Category exposing (CategoryId, Category)
-import Model.PaymentCategory as PaymentCategory
-import Model.Translations exposing (getMessage)
-
-view : LoggedData -> Category.Model -> Html Msg
-view loggedData categoryModel =
- let categories =
- loggedData.categories
- |> Dict.toList
- |> List.sortBy (.name << Tuple.second)
- in div
- [ class "table" ]
- [ div
- [ class "lines" ]
- ( headerLine loggedData :: List.map (paymentLine loggedData categoryModel) categories)
- , if List.isEmpty (Dict.toList loggedData.categories)
- then
- div
- [ class "emptyTableMsg" ]
- [ text <| getMessage loggedData.translations "NoCategories" ]
- else
- text ""
- ]
-
-headerLine : LoggedData -> Html Msg
-headerLine loggedData =
- div
- [ class "header" ]
- [ div [ class "cell name" ] [ text <| getMessage loggedData.translations "Name" ]
- , div [ class "cell category" ] [ text <| getMessage loggedData.translations "Color" ]
- , div [ class "cell" ] []
- , div [ class "cell" ] []
- , div [ class "cell" ] []
- ]
-
-paymentLine : LoggedData -> Category.Model -> (CategoryId, Category) -> Html Msg
-paymentLine loggedData categoryModel (categoryId, category) =
- div
- [ class "row" ]
- [ div
- [ class "cell category" ]
- [ text category.name ]
- , div
- [ class "cell category" ]
- [ span
- [ class "tag"
- , style [("background-color", category.color)]
- ]
- [ text category.color ]
- ]
- , div
- [ class "cell button" ]
- [ let currentDate = Date.fromTime loggedData.currentTime
- in AddCategory.button
- loggedData
- (AddCategory.initialClone loggedData.translations category)
- "CloneCategory"
- (FontAwesome.clone Color.chestnutRose 18)
- (Just (getMessage loggedData.translations "Clone"))
- ]
- , div
- [ class "cell button" ]
- [ AddCategory.button
- loggedData
- (AddCategory.initialEdit loggedData.translations categoryId category)
- "EditCategory"
- (FontAwesome.pencil Color.chestnutRose 18)
- (Just (getMessage loggedData.translations "Edit"))
- ]
- , div
- [ class "cell button" ]
- [ if PaymentCategory.isCategoryUnused categoryId loggedData.paymentCategories
- then
- let dialogConfig =
- { className = "deleteCategoryDialog"
- , title = getMessage loggedData.translations "ConfirmCategoryDelete"
- , body = always <| text ""
- , confirm = getMessage loggedData.translations "Confirm"
- , confirmMsg = always <| Msg.Dialog <| Dialog.UpdateAndClose <| Msg.DeleteCategory categoryId
- , undo = getMessage loggedData.translations "Undo"
- }
- in button
- ( Tooltip.show Msg.Tooltip (getMessage loggedData.translations "Delete")
- ++ [ onClick (Msg.Dialog <| Dialog.Open dialogConfig) ]
- )
- [ FontAwesome.trash Color.chestnutRose 18 ]
- else
- span
- ( Tooltip.show Msg.Tooltip (getMessage loggedData.translations "UsedCategory") )
- [ FontAwesome.trash Color.silver 18 ]
- ]
- ]
diff --git a/src/client/elm/LoggedIn/Category/Update.elm b/src/client/elm/LoggedIn/Category/Update.elm
deleted file mode 100644
index 1072ef0..0000000
--- a/src/client/elm/LoggedIn/Category/Update.elm
+++ /dev/null
@@ -1,24 +0,0 @@
-module LoggedIn.Category.Update exposing
- ( update
- )
-
-import Form exposing (Form)
-
-import LoggedData exposing (LoggedData)
-
-import LoggedIn.Category.Model as Category
-import LoggedIn.Category.Msg as Category
-
-update : LoggedData -> Category.Msg -> Category.Model -> (Category.Model, Cmd Category.Msg)
-update loggedData msg model =
- case msg of
-
- Category.NoOp ->
- ( model
- , Cmd.none
- )
-
- Category.AddCategoryMsg formMsg ->
- ( { model | addCategory = Form.update Category.validation formMsg model.addCategory }
- , Cmd.none
- )
diff --git a/src/client/elm/LoggedIn/Category/View.elm b/src/client/elm/LoggedIn/Category/View.elm
deleted file mode 100644
index 4e04fa2..0000000
--- a/src/client/elm/LoggedIn/Category/View.elm
+++ /dev/null
@@ -1,35 +0,0 @@
-module LoggedIn.Category.View exposing
- ( view
- )
-
-import Html exposing (..)
-import Html.Attributes exposing (..)
-
-import LoggedData exposing (LoggedData)
-
-import Msg exposing (Msg)
-
-import Dialog.AddCategory.Model as AddCategory
-import Dialog.AddCategory.View as AddCategory
-
-import LoggedIn.Category.Model as Category
-import LoggedIn.Category.Table.View as Table
-
-import Model.Translations exposing (getMessage, getParamMessage)
-
-view : LoggedData -> Category.Model -> Html Msg
-view loggedData categoryModel =
- div
- [ class "categories" ]
- [ div
- [ class "titleButton withMargin" ]
- [ h1 [] [ text <| getMessage loggedData.translations "Categories" ]
- , AddCategory.button
- loggedData
- (AddCategory.initialAdd loggedData.translations)
- "AddCategory"
- (text (getMessage loggedData.translations "AddCategory"))
- Nothing
- ]
- , Table.view loggedData categoryModel
- ]