From c3c151416032780d657719669f9445d6301b9af0 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Jameux Date: Mon, 15 Aug 2022 18:28:13 +0200 Subject: [PATCH] =?UTF-8?q?Int=C3=A9gration=20de=20la=20page=20G=C3=A9n?= =?UTF-8?q?=C3=A9rateur=20Json=20au=20site?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Prof.elm | 64 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 58 insertions(+), 6 deletions(-) diff --git a/src/Prof.elm b/src/Prof.elm index b1e6233..da75276 100644 --- a/src/Prof.elm +++ b/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 =