Intégration de la page Générateur Json au site

pull/1/head
Jean-Christophe Jameux 3 years ago
parent 784114d950
commit c3c1514160
  1. 64
      src/Prof.elm

@ -11,6 +11,7 @@ import Element.Events exposing (..)
import Element.Font as Font
import GenerateurDeProblemes
import GenerateurH5P
import GenerateurJson
import Html exposing (Html)
import Html.Attributes
import Style exposing (..)
@ -58,6 +59,7 @@ type alias Model =
, modeleGenerateurDeProblemes : GenerateurDeProblemes.Model
, modeleCalculateurDeNotes : CalculateurDeNotes.Model
, modeleGenerateurH5P : GenerateurH5P.Model
, modeleGenerateurJson : GenerateurJson.Model
}
@ -65,6 +67,7 @@ type Page
= GenerateurDeProblemes
| CalculateurDeNotes
| GenerateurH5P
| GenerateurJson
type alias Flags =
@ -85,6 +88,7 @@ init flags url key =
GenerateurDeProblemes.init
CalculateurDeNotes.init
GenerateurH5P.init
GenerateurJson.init
, Cmd.none
)
@ -97,6 +101,7 @@ init flags url key =
GenerateurDeProblemes.init
CalculateurDeNotes.init
GenerateurH5P.init
GenerateurJson.init
, Cmd.none
)
@ -109,19 +114,34 @@ init flags url key =
GenerateurDeProblemes.init
CalculateurDeNotes.init
GenerateurH5P.init
GenerateurJson.init
, Cmd.none
)
Just "GenerateurJson" ->
( Model key
url
GenerateurJson
flags.l
flags.h
GenerateurDeProblemes.init
CalculateurDeNotes.init
GenerateurH5P.init
GenerateurJson.init
, Cmd.none
)
_ ->
( Model key
{ url | fragment = Just "GenerateurH5P" }
GenerateurH5P
{ url | fragment = Just "GenerateurJson" }
GenerateurJson
flags.l
flags.h
GenerateurDeProblemes.init
CalculateurDeNotes.init
GenerateurH5P.init
, Nav.pushUrl key (Url.toString { url | fragment = Just "GenerateurH5P" })
GenerateurJson.init
, Nav.pushUrl key (Url.toString { url | fragment = Just "GenerateurJson" })
)
@ -141,6 +161,7 @@ type Msg
| CalculateurDeNotesMsg CalculateurDeNotes.Msg
| GenerateurDeProblemesMsg GenerateurDeProblemes.Msg
| GenerateurH5PMsg GenerateurH5P.Msg
| GenerateurJsonMsg GenerateurJson.Msg
update : Msg -> Model -> ( Model, Cmd Msg )
@ -180,12 +201,20 @@ update msg model =
, Cmd.none
)
Just "GenerateurJson" ->
( { model
| url = url
, page = GenerateurJson
}
, Cmd.none
)
_ ->
( { model
| url = { url | fragment = Just "GenerateurH5P" }
, page = GenerateurH5P
| url = { url | fragment = Just "GenerateurJson" }
, page = GenerateurJson
}
, Nav.pushUrl model.key (Url.toString { url | fragment = Just "GenerateurH5P" })
, Nav.pushUrl model.key (Url.toString { url | fragment = Just "GenerateurJson" })
)
( GenerateurDeProblemesMsg message, GenerateurDeProblemes ) ->
@ -223,6 +252,18 @@ update msg model =
, Cmd.map GenerateurH5PMsg commande
)
( GenerateurJsonMsg message, GenerateurJson ) ->
let
( nouveauModele, commande ) =
GenerateurJson.update message
model.modeleGenerateurJson
in
( { model
| modeleGenerateurJson = nouveauModele
}
, Cmd.map GenerateurJsonMsg commande
)
_ ->
( model, Cmd.none )
@ -283,6 +324,17 @@ view model =
]
}
GenerateurJson ->
{ title = GenerateurJson.titre
, body =
[ GenerateurJson.view model.modeleGenerateurJson
|> Element.map GenerateurJsonMsg
|> designGeneral
model.largeur
GenerateurJson.titre
]
}
viewLink : String -> Html msg
viewLink path =

Loading…
Cancel
Save