diff --git a/code-premium/codes-promo-OC.php b/code-premium/codes-promo-OC.php
index 78b2536f544a9b1f2c70ecb45daf1895c4cb15f1..12a5eae00802c2fb669b7acefefb9912f78e9417 100644
--- a/code-premium/codes-promo-OC.php
+++ b/code-premium/codes-promo-OC.php
@@ -1,4 +1,39 @@
 <?php 
+  /*
+Voici les 30 codes de 3 mois, valides jusqu'en Juin 2020 :
+
+    CLASSCODE3M1
+    CLASSCODE3M2
+    CLASSCODE3M3
+    CLASSCODE3M4
+    CLASSCODE3M5
+    CLASSCODE3M6
+    CLASSCODE3M7
+    CLASSCODE3M8
+    CLASSCODE3M9
+    CLASSCODE3M10
+    CLASSCODE3M11
+    CLASSCODE3M12
+    CLASSCODE3M13
+    CLASSCODE3M14
+    CLASSCODE3M15
+    CLASSCODE3M16
+    CLASSCODE3M17
+    CLASSCODE3M18
+    CLASSCODE3M19
+    CLASSCODE3M20
+    CLASSCODE3M21
+    CLASSCODE3M22
+    CLASSCODE3M23
+    CLASSCODE3M24
+    CLASSCODE3M25
+    CLASSCODE3M26
+    CLASSCODE3M27
+    CLASSCODE3M28
+    CLASSCODE3M29
+    CLASSCODE3M30
+
+   */
 $codes_promo = array(
 		     //"CLASSCODEYJRYS",
 		     //"CLASSCODEEY4VV",
@@ -6,68 +41,7 @@ $codes_promo = array(
 		     //"CLASSCODEBSTLS",
 		     //"CLASSCODEIUC7M",
 		     //"CLASSCODEIRSZT",
-"CLASSCODEIFM28",
-"CLASSCODEUNZDQ",
-"CLASSCODEMF8RW",
-"CLASSCODE7RCP3",
-"CLASSCODEDCM24",
-"CLASSCODEQBZHF",
-"CLASSCODEVWDKV",
-"CLASSCODEFIUDE",
-"CLASSCODEAFEFZ",
-"CLASSCODEE929W",
-"CLASSCODEELMG7",
-"CLASSCODEVDUTC",
-"CLASSCODERFBKX",
-"CLASSCODEBMUF2",
-"CLASSCODEHZ5NY",
-"CLASSCODEFQ2LJ",
-"CLASSCODE4IP8G",
-"CLASSCODE97HPB",
-"CLASSCODE6VEKG",
-"CLASSCODE8LMFI",
-"CLASSCODESMPKF",
-"CLASSCODERIKIM",
-"CLASSCODEFQMKH",
-"CLASSCODEHFS9F",
-"CLASSCODETXF2J",
-"CLASSCODEEHMUX",
-"CLASSCODE5IPGL",
-"CLASSCODEWT6YK",
-"CLASSCODE736I8",
-"CLASSCODEJ8D4X",
-"CLASSCODESWZKX",
-"CLASSCODEL5428",
-"CLASSCODECEMUI",
-"CLASSCODERNVGR",
-"CLASSCODERGR4D",
-"CLASSCODEAPTGF",
-"CLASSCODE3ZPIW",
-"CLASSCODEJJUMI",
-"CLASSCODEN4AVM",
-"CLASSCODEUT43Q",
-"CLASSCODE3AZD7",
-"CLASSCODEE6MRR",
-"CLASSCODEVWBIN",
-"CLASSCODERTL2P",
-"CLASSCODEQWYF9",
-"CLASSCODEISXD7",
-"CLASSCODEC9IXR",
-"CLASSCODESEMFU",
-"CLASSCODEDVF9B",
-"CLASSCODEKYJPG",
-"CLASSCODEB8H53",
-"CLASSCODEYGDSD",
-"CLASSCODENNDWQ",
-"CLASSCODE44WYM",
-"CLASSCODE4KU3D",
-"CLASSCODENNMRF",
-"CLASSCODEHRQM2",
-"CLASSCODEHUFKP",
-"CLASSCODEQNA49",
-"CLASSCODE8QHMZ",
-"CLASSCODEIA6RJ",
-"CLASSCODE3SQPI",
+		     // "CLASSCODEIFM28", used fror a teatcher  sebastien.feulvarch@ac-rennes.fr on june, the 17th
 // julien.ferard@yahoo.fr le 29 juin 2018
 //"CLASSCODEQNMRF",
 // Gwenaël Cotton <gwenael.cotton@gmail.com> le 26 mai
diff --git a/iai-wrapper/index.html b/iai-wrapper/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc2a1c3c7136e5204b009f44f0af394866354716
Binary files /dev/null and b/iai-wrapper/index.html differ
diff --git a/iai-wrapper/makefile b/iai-wrapper/makefile
new file mode 100644
index 0000000000000000000000000000000000000000..f58895a1e57b6ef4d8368c4fdd718a37b439e302
--- /dev/null
+++ b/iai-wrapper/makefile
@@ -0,0 +1,2 @@
+all :
+	php update.php
diff --git a/iai-wrapper/update.php b/iai-wrapper/update.php
new file mode 100644
index 0000000000000000000000000000000000000000..d0eb98226bfc8215357f8a6dbb1d6cff33b28cfb
--- /dev/null
+++ b/iai-wrapper/update.php
@@ -0,0 +1,69 @@
+<?php
+{
+  // Gdrive arrays IDs
+  $data_sheets_IDS = array(
+		       "Ressources" => "1xlI91FqGZ1XLltIcPe5_3IvASOVbSWKC5sdlGxrfWVk",
+		       "Événements" => "1lFRQpuBVGoLg0Sj90nHjHsxKMFzmHv6oC7X0AT3AmmM",
+		       "Questionnements" => "1IkqZP0WwdttFcMYVEn53DzpnaTESKtZYFqhJ6hA46jw",
+		       "Partenaires" => "1f18x3mIHlNXpFNRlMfJA6YGmPLbil5WxP8L71jlS2Fg",
+		       );
+  // Gdrive arrays displayed fields
+  $data_sheets_fields = array(
+			      "Ressources" => array("Titre", "URL", "URL2", "Auteur", "Éditeur", "Langue", "Objectif didactique ou pédagogique"),
+			      "Événements" => array("Titre", "Type", "Cible", "Date", "Lieu", "Contact", "URL"),
+			      "Questionnements" => array("Catégorie", "Domaine", "Question"),
+			      "Partenaires" => array("Nom", "URL", "Contact"),
+			      );	
+  // Returns the value the record of the given $index for the given $fieldName in the given $sheetName
+  function get_data($sheetName, $fieldName, $index) {
+    global $data_csv_contents, $data_sheets_fields_index;
+    if (array_key_exists($sheetName, $data_csv_contents) && array_key_exists($index+1, $data_csv_contents[$sheetName]) &&
+	array_key_exists($sheetName, $data_sheets_fields_index) && array_key_exists($fieldName, $data_sheets_fields_index[$sheetName]) &&
+	array_key_exists($data_sheets_fields_index[$sheetName][$fieldName], $data_csv_contents[$sheetName][$index+1])) {
+      return $data_csv_contents[$sheetName][$index+1][$data_sheets_fields_index[$sheetName][$fieldName]];
+    } else {
+      return "";
+    }
+  }
+  // Returns the value the record of the given $index for the given $fieldName in the given $sheetName
+  function get_data_count($sheetName) {
+    global $data_csv_contents, $data_sheets_fields_index;
+    return count($data_csv_contents[$sheetName]) - 1;
+  }
+  $data_csv_contents = array();
+  $data_sheets_fields_index = array();
+  // Loads the sheets and generates the indexes
+  {
+    foreach($data_sheets_IDS as $sheetName => $sheetID) {
+      // Loads the contents
+      $data_csv_contents[$sheetName] = array_map("str_getcsv", explode("\n", file_get_contents("https://docs.google.com/spreadsheets/d/".$sheetID."/export?exportFormat=csv")));
+      $data_sheets_fields_index[$sheetName] = array();
+      foreach($data_sheets_fields[$sheetName] as $fieldName)
+	for($index = 0; $index < count($data_csv_contents[$sheetName][0]); $index++)
+	  if ($data_csv_contents[$sheetName][0][$index] == $fieldName)
+	    $data_sheets_fields_index[$sheetName][$fieldName] = $index;
+    }
+    //-print_r($data_csv_contents);
+  }
+
+  // Now displays all data as HTML file
+  {
+    $html = "<html><head><meta charset='UTF-8;'></head><body>\n";
+    foreach($data_sheets_fields as $sheetName => $fieldNames) {
+      $html .= "<h2> Table des <a target='_blank' href='https://docs.google.com/spreadsheets/d/".$data_sheets_IDS[$sheetName]."'>". $sheetName."</a></h2><table>\n  <tr>";
+      foreach($fieldNames as $fieldName) 
+	$html .= "<th>".$fieldName."</th>";
+      $html .= "</tr>\n";
+      for($index = 0; $index < get_data_count($sheetName); $index++) {
+	$html .= "  <tr>";
+	foreach($fieldNames as $fieldName) 
+	  $html .= "<td>".get_data($sheetName, $fieldName, $index)."</td>";
+	$html .= "</tr>\n";
+      }
+      $html .= "</table>";
+    }
+    $html .= "</body></html>\n";
+    file_put_contents("index.html", $html);
+  }
+}
+?>