From 555b621b618e4810324a2658d33315b05157e6be Mon Sep 17 00:00:00 2001 From: Joris Date: Fri, 23 Dec 2016 09:52:20 +0100 Subject: Add programs grouped by level --- src/main/scala/reading/models/Program.scala | 70 +++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 src/main/scala/reading/models/Program.scala (limited to 'src/main/scala/reading/models/Program.scala') diff --git a/src/main/scala/reading/models/Program.scala b/src/main/scala/reading/models/Program.scala new file mode 100644 index 0000000..4603b03 --- /dev/null +++ b/src/main/scala/reading/models/Program.scala @@ -0,0 +1,70 @@ +package reading.models + +import enumeratum._ + +sealed trait Program extends EnumEntry { + import Program._ + + override def toString(): String = this match { + case Monstre => "Le monstre, aux limites de l'humain" + case RecitAventure => "Récits d'aventures" + case CreationPoetique => "Récit de création, création poétique" + case Resister => "Résister au plus fort : ruses, mensonges et masques" + + case VoyageEtAventure => "le voyage et l'aventure. Pourquoi aller vers l'inconnu ?" + case Autrui => "avec autrui : familles, amis, réseaux." + case UniversNouveaux => "imaginer des univers nouveaux." + case Heros => "héros, héroïnes et héroïsmes." + case HommeEtNature => "l'être humain est-il maître de la nature ?" + + case DireAmour => "Dire l'amour" + case IndividuEtSociete => "Individu et société : confrontations de valeur ?" + case FictionEtReel => "la fiction pour interroger le réel" + case Informer => "Informer, s'informer, déformer ?" + case Ville => "La ville, lieu de tous les possibles ?" + + case RaconterRepresenter => "Se raconter, se représenter" + case TraversSociete => "Dénoncer les travers de la société" + case VisionsPoetiques => "Visions poétiques du monde" + case AgirCite => "Agir dans la cité : individu et pouvoir" + case ProgresReveScientifique => "Progrès et rêves scientifiques" + } +} + +object Program extends Enum[Program] { + val values = findValues + + case object Monstre extends Program + case object RecitAventure extends Program + case object CreationPoetique extends Program + case object Resister extends Program + + case object VoyageEtAventure extends Program + case object Autrui extends Program + case object UniversNouveaux extends Program + case object Heros extends Program + case object HommeEtNature extends Program + + case object DireAmour extends Program + case object IndividuEtSociete extends Program + case object FictionEtReel extends Program + case object Informer extends Program + case object Ville extends Program + + case object RaconterRepresenter extends Program + case object TraversSociete extends Program + case object VisionsPoetiques extends Program + case object AgirCite extends Program + case object ProgresReveScientifique extends Program + + def level(program: Program): Level = { + import Level._ + + program match { + case Monstre | RecitAventure | CreationPoetique | Resister => Sixieme + case VoyageEtAventure | Autrui | UniversNouveaux | Heros | HommeEtNature => Cinquieme + case DireAmour | IndividuEtSociete | FictionEtReel | Informer | Ville => Quatrieme + case RaconterRepresenter | TraversSociete | VisionsPoetiques | AgirCite | ProgresReveScientifique => Troisieme + } + } +} -- cgit v1.2.3