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 Element.Font as Font
import GenerateurDeProblemes import GenerateurDeProblemes
import GenerateurH5P import GenerateurH5P
import GenerateurJson
import Html exposing (Html) import Html exposing (Html)
import Html.Attributes import Html.Attributes
import Style exposing (..) import Style exposing (..)
@ -58,6 +59,7 @@ type alias Model =
, modeleGenerateurDeProblemes : GenerateurDeProblemes.Model , modeleGenerateurDeProblemes : GenerateurDeProblemes.Model
, modeleCalculateurDeNotes : CalculateurDeNotes.Model , modeleCalculateurDeNotes : CalculateurDeNotes.Model
, modeleGenerateurH5P : GenerateurH5P.Model , modeleGenerateurH5P : GenerateurH5P.Model
, modeleGenerateurJson : GenerateurJson.Model
} }
@ -65,6 +67,7 @@ type Page
= GenerateurDeProblemes = GenerateurDeProblemes
| CalculateurDeNotes | CalculateurDeNotes
| GenerateurH5P | GenerateurH5P
| GenerateurJson
type alias Flags = type alias Flags =
@ -85,6 +88,7 @@ init flags url key =
GenerateurDeProblemes.init GenerateurDeProblemes.init
CalculateurDeNotes.init CalculateurDeNotes.init
GenerateurH5P.init GenerateurH5P.init
GenerateurJson.init
, Cmd.none , Cmd.none
) )
@ -97,6 +101,7 @@ init flags url key =
GenerateurDeProblemes.init GenerateurDeProblemes.init
CalculateurDeNotes.init CalculateurDeNotes.init
GenerateurH5P.init GenerateurH5P.init
GenerateurJson.init
, Cmd.none , Cmd.none
) )
@ -109,19 +114,34 @@ init flags url key =
GenerateurDeProblemes.init GenerateurDeProblemes.init
CalculateurDeNotes.init CalculateurDeNotes.init
GenerateurH5P.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 , Cmd.none
) )
_ -> _ ->
( Model key ( Model key
{ url | fragment = Just "GenerateurH5P" } { url | fragment = Just "GenerateurJson" }
GenerateurH5P GenerateurJson
flags.l flags.l
flags.h flags.h
GenerateurDeProblemes.init GenerateurDeProblemes.init
CalculateurDeNotes.init CalculateurDeNotes.init
GenerateurH5P.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 | CalculateurDeNotesMsg CalculateurDeNotes.Msg
| GenerateurDeProblemesMsg GenerateurDeProblemes.Msg | GenerateurDeProblemesMsg GenerateurDeProblemes.Msg
| GenerateurH5PMsg GenerateurH5P.Msg | GenerateurH5PMsg GenerateurH5P.Msg
| GenerateurJsonMsg GenerateurJson.Msg
update : Msg -> Model -> ( Model, Cmd Msg ) update : Msg -> Model -> ( Model, Cmd Msg )
@ -180,12 +201,20 @@ update msg model =
, Cmd.none , Cmd.none
) )
Just "GenerateurJson" ->
( { model
| url = url
, page = GenerateurJson
}
, Cmd.none
)
_ -> _ ->
( { model ( { model
| url = { url | fragment = Just "GenerateurH5P" } | url = { url | fragment = Just "GenerateurJson" }
, page = GenerateurH5P , 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 ) -> ( GenerateurDeProblemesMsg message, GenerateurDeProblemes ) ->
@ -223,6 +252,18 @@ update msg model =
, Cmd.map GenerateurH5PMsg commande , 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 ) ( 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 : String -> Html msg
viewLink path = viewLink path =

Loading…
Cancel
Save