diff options
Diffstat (limited to 'src/main/scala/reading/models/Program.scala')
-rw-r--r-- | src/main/scala/reading/models/Program.scala | 70 |
1 files changed, 70 insertions, 0 deletions
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 + } + } +} |