Updates education and adapts AX data to merge them into Xorg data (Closes #891).
authorStéphane Jacob <jacou@melix.net>
Sun, 12 Oct 2008 21:50:58 +0000 (23:50 +0200)
committerStéphane Jacob <jacou@melix.net>
Mon, 20 Oct 2008 19:46:22 +0000 (21:46 +0200)
16 files changed:
ChangeLog
include/education.func.inc.php
include/user.func.inc.php
include/userset.inc.php
modules/fusionax.php
modules/fusionax/Formations.sql
modules/fusionax/formation.pl [new file with mode: 0755]
modules/fusionax/import-ax.sh
templates/fusionax/index.tpl
templates/fusionax/listFusion.tpl
templates/fusionax/promo.tpl [new file with mode: 0644]
templates/profile/profile.tpl
upgrade/merge-0.0.1/07_education.php [new file with mode: 0755]
upgrade/newdirectory-0.0.1/06_education.sql
upgrade/newdirectory-0.0.1/09_education.sql [new file with mode: 0644]
upgrade/newdirectory-0.0.1/connect.db.inc.php

index 0013ddb..03744cf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,6 +10,7 @@ Bug/Wish:
         - #188: Adds informations about the Corps d'État                   -JAC
         - #209: Thoroughly changes education's implementation              -JAC
         - #386: Adds the possibility to fill in multiple nationalities     -JAC
         - #188: Adds informations about the Corps d'État                   -JAC
         - #209: Thoroughly changes education's implementation              -JAC
         - #386: Adds the possibility to fill in multiple nationalities     -JAC
+        - #891: Improves education display                                 -JAC
 
 ================================================================================
 VERSION 0.9.18                                                        XX XX XXXX
 
 ================================================================================
 VERSION 0.9.18                                                        XX XX XXXX
index 64da8f1..857774e 100644 (file)
@@ -24,7 +24,10 @@ function education_options($current = 0)
     $html = '<option value="-1"></option>';
     $res  = XDB::iterator("SELECT  e.id AS id, e.name AS name, g.pays AS country
                              FROM  profile_education_enum AS e
     $html = '<option value="-1"></option>';
     $res  = XDB::iterator("SELECT  e.id AS id, e.name AS name, g.pays AS country
                              FROM  profile_education_enum AS e
-                       INNER JOIN  geoloc_pays            AS g ON (e.country = g.a2)
+                        LEFT JOIN  geoloc_pays            AS g ON (e.country = g.a2)
+                     WHERE EXISTS  (SELECT  *
+                                      FROM  profile_education_degree AS d
+                                     WHERE  e.id = d.eduid)
                          ORDER BY  g.pays, e.name");
     $country = "";
     while ($arr_edu = $res->next()) {
                          ORDER BY  g.pays, e.name");
     $country = "";
     while ($arr_edu = $res->next()) {
@@ -57,10 +60,10 @@ Platal::page()->register_function('education_options', '_education_options_smart
 function education_degree()
 {
     $html = "";
 function education_degree()
 {
     $html = "";
-    $res = XDB::iterRow("SELECT  eduid, degreeid
-                           FROM  profile_education_degree AS d
-                     INNER JOIN  profile_education_enum   AS e ON (e.id = d.eduid)
-                     INNER JOIN  geoloc_pays              AS g ON (e.country = g.a2)
+    $res = XDB::iterRow("SELECT  d.eduid, d.degreeid
+                           FROM  profile_education_enum   AS e
+                     INNER JOIN  profile_education_degree AS d ON (e.id = d.eduid)
+                      LEFT JOIN  geoloc_pays              AS g ON (e.country = g.a2)
                        ORDER BY  g.pays, e.name");
     if ($edu_degree = $res->next()) {
         $eduid = $edu_degree['0'];
                        ORDER BY  g.pays, e.name");
     if ($edu_degree = $res->next()) {
         $eduid = $edu_degree['0'];
@@ -92,7 +95,6 @@ Platal::page()->register_function('education_degree', 'education_degree');
  */
 function education_degree_all()
 {
  */
 function education_degree_all()
 {
-    $html = "";
     $res = XDB::query("SELECT  id
                          FROM  profile_education_degree_enum
                      ORDER BY  id");
     $res = XDB::query("SELECT  id
                          FROM  profile_education_degree_enum
                      ORDER BY  id");
@@ -104,11 +106,10 @@ Platal::page()->register_function('education_degree_all', 'education_degree_all'
  */
 function education_degree_name()
 {
  */
 function education_degree_name()
 {
-    $html = "";
     $res = XDB::query("SELECT  degree
     $res = XDB::query("SELECT  degree
-                           FROM  profile_education_degree_enum
-                       ORDER BY  id");
-    return '\'' . implode('\',\'', $res->fetchColumn()) . '\'';
+                         FROM  profile_education_degree_enum
+                     ORDER BY  id");
+    return '"' . implode('","', $res->fetchColumn()) . '"';
 }
 Platal::page()->register_function('education_degree_name', 'education_degree_name');
 
 }
 Platal::page()->register_function('education_degree_name', 'education_degree_name');
 
@@ -142,19 +143,17 @@ function education_fmt($name, $url, $degree, $grad_year, $field, $program, $sexe
         }
     }
 
         }
     }
 
-    if (($degree != "Licence") || ($long)) {
-        if (($degree != "Ingénieur") && ($degree != "Diplôme")) {
+    if (($degree != "Lic.") || ($long)) {
+        if (($degree != "Ing.") && ($degree != "Dipl.")) {
             $txt .= $degree;
         }
             $txt .= $degree;
         }
-        if ($name != "Université") {
-            if ($name) {
-                $txt .= ' ';
-            }
-            if ($url != ' ') {
-                $txt .= "<a href=\"$url\" onclick=\"return popup(this)\">$name</a>";
-            } else {
-                $txt .= $name;
-            }
+        if ($name) {
+            $txt .= ' ';
+        }
+        if ($url != ' ') {
+            $txt .= "<a href=\"$url\" onclick=\"return popup(this)\">$name</a>";
+        } else {
+            $txt .= $name;
         }
     }
     $txt .= "</span>";
         }
     }
     $txt .= "</span>";
index 3b18c7b..104dd64 100644 (file)
@@ -353,19 +353,18 @@ function &get_user_details($login, $from_uid = '', $view = 'private')
     $res = XDB::iterRow("SELECT  en.name AS name, en.url AS url, d.degree AS degree,
                                  ed.grad_year AS grad_year, f.field AS field, ed.program AS program
                            FROM  profile_education AS ed
     $res = XDB::iterRow("SELECT  en.name AS name, en.url AS url, d.degree AS degree,
                                  ed.grad_year AS grad_year, f.field AS field, ed.program AS program
                            FROM  profile_education AS ed
-                     INNER JOIN  profile_education_enum        AS en ON (en.id = ed.eduid)
-                     INNER JOIN  profile_education_degree_enum AS d  ON (d.id  = ed.degreeid)
-                     INNER JOIN  profile_education_field_enum  AS f  ON (f.id  = ed.fieldid)
+                      LEFT JOIN  profile_education_enum        AS en ON (en.id = ed.eduid)
+                      LEFT JOIN  profile_education_degree_enum AS d  ON (d.id  = ed.degreeid)
+                      LEFT JOIN  profile_education_field_enum  AS f  ON (f.id  = ed.fieldid)
                           WHERE  uid={?}
                        ORDER BY  ed.grad_year", $uid);
 
                           WHERE  uid={?}
                        ORDER BY  ed.grad_year", $uid);
 
-    $user['education'] = "";
-    require_once('education.func.inc.php');
     if (list($name, $url, $degree, $grad_year, $field, $program) = $res->next()) {
     if (list($name, $url, $degree, $grad_year, $field, $program) = $res->next()) {
-        $user['education'] .= education_fmt($name, $url, $degree, $grad_year, $field, $program, $user['sexe'], true);
+        require_once('education.func.inc.php');
+        $user['education'][] = education_fmt($name, $url, $degree, $grad_year, $field, $program, $user['sexe'], true);
     }
     while (list($name, $url, $degree, $grad_year, $field, $program) = $res->next()) {
     }
     while (list($name, $url, $degree, $grad_year, $field, $program) = $res->next()) {
-        $user['education'] .= ", " . education_fmt($name, $url, $degree, $grad_year, $field, $program, $user['sexe'], true);
+        $user['education'][] = education_fmt($name, $url, $degree, $grad_year, $field, $program, $user['sexe'], true);
     }
 
     if (has_user_right($user['corps_pub'], $view)) {
     }
 
     if (has_user_right($user['corps_pub'], $view)) {
index e81fef2..7bbb1f8 100644 (file)
@@ -178,16 +178,20 @@ class MinificheView extends MultipageView
                 u.deces != 0 AS dcd, u.deces, u.matricule_ax,
                 FIND_IN_SET('femme', u.flags) AS sexe,
                 e.entreprise, e.web AS job_web, es.label AS secteur, ef.fonction_fr AS fonction,
                 u.deces != 0 AS dcd, u.deces, u.matricule_ax,
                 FIND_IN_SET('femme', u.flags) AS sexe,
                 e.entreprise, e.web AS job_web, es.label AS secteur, ef.fonction_fr AS fonction,
-                IF(n1.nat='',n1.pays,n1.nat) AS nat1, n1.a2 AS iso3166_1,
-                IF(n2.nat='',n2.pays,n2.nat) AS nat2, n2.a2 AS iso3166_2,
-                IF(n3.nat='',n3.pays,n3.nat) AS nat3, n3.a2 AS iso3166_3,
-                ede0.name AS eduname0, ede0.url AS eduurl0, edd0.degree AS edudegree0,
+                IF(n1.nat = '', n1.pays, n1.nat) AS nat1, n1.a2 AS iso3166_1,
+                IF(n2.nat = '', n2.pays, n2.nat) AS nat2, n2.a2 AS iso3166_2,
+                IF(n3.nat = '', n3.pays, n3.nat) AS nat3, n3.a2 AS iso3166_3,
+                IF(ede0.abbreviation = '', ede0.name, ede0.abbreviation) AS eduname0, ede0.url AS eduurl0,
+                IF(edd0.abbreviation = '', edd0.degree, edd0.abbreviation) AS edudegree0,
                 edu0.grad_year AS edugrad_year0, f0.field AS edufield0, edu0.program AS eduprogram0,
                 edu0.grad_year AS edugrad_year0, f0.field AS edufield0, edu0.program AS eduprogram0,
-                ede1.name AS eduname1, ede1.url AS eduurl1, edd1.degree AS edudegree1,
+                IF(ede1.abbreviation = '', ede1.name, ede1.abbreviation) AS eduname1, ede1.url AS eduurl1,
+                IF(edd1.abbreviation = '', edd1.degree, edd1.abbreviation) AS edudegree1,
                 edu1.grad_year AS edugrad_year1, f1.field AS edufield1, edu1.program AS eduprogram1,
                 edu1.grad_year AS edugrad_year1, f1.field AS edufield1, edu1.program AS eduprogram1,
-                ede2.name AS eduname2, ede2.url AS eduurl2, edd2.degree AS edudegree2,
+                IF(ede2.abbreviation = '', ede2.name, ede2.abbreviation) AS eduname2, ede2.url AS eduurl2,
+                IF(edd2.abbreviation = '', edd2.degree, edd2.abbreviation) AS edudegree2,
                 edu2.grad_year AS edugrad_year2, f2.field AS edufield2, edu2.program AS eduprogram2,
                 edu2.grad_year AS edugrad_year2, f2.field AS edufield2, edu2.program AS eduprogram2,
-                ede3.name AS eduname3, ede3.url AS eduurl3, edd3.degree AS edudegree3,
+                IF(ede3.abbreviation = '', ede3.name, ede3.abbreviation) AS eduname3, ede3.url AS eduurl3,
+                IF(edd3.abbreviation = '', edd3.degree, edd3.abbreviation) AS edudegree3,
                 edu3.grad_year AS edugrad_year3, f3.field AS edufield3, edu3.program AS eduprogram3,
                 adr.city, gp.a2, gp.pays AS countrytxt, gr.name AS region,
                 (COUNT(em.email) > 0 OR FIND_IN_SET('googleapps', u.mail_storage) > 0) AS actif,
                 edu3.grad_year AS edugrad_year3, f3.field AS edufield3, edu3.program AS eduprogram3,
                 adr.city, gp.a2, gp.pays AS countrytxt, gr.name AS region,
                 (COUNT(em.email) > 0 OR FIND_IN_SET('googleapps', u.mail_storage) > 0) AS actif,
index 28958be..aa07f4b 100644 (file)
@@ -43,6 +43,7 @@ class FusionAxModule extends PLModule
             'fusionax/view'     => $this->make_hook('view',     AUTH_MDP, 'admin'),
             'fusionax/ids'      => $this->make_hook('ids',      AUTH_MDP, 'admin'),
             'fusionax/deceased' => $this->make_hook('deceased', AUTH_MDP, 'admin'),
             'fusionax/view'     => $this->make_hook('view',     AUTH_MDP, 'admin'),
             'fusionax/ids'      => $this->make_hook('ids',      AUTH_MDP, 'admin'),
             'fusionax/deceased' => $this->make_hook('deceased', AUTH_MDP, 'admin'),
+            'fusionax/promo'    => $this->make_hook('promo',    AUTH_MDP, 'admin'),
         );
     }
 
         );
     }
 
@@ -171,12 +172,12 @@ class FusionAxModule extends PLModule
             XDB::execute('DROP VIEW IF EXISTS fusionax_deceased');
             XDB::execute('CREATE VIEW  fusionax_deceased AS
                                SELECT  u.user_id, a.id_ancien, u.nom, u.prenom, u.promo, u.deces AS deces_xorg, a.Date_deces AS deces_ax
             XDB::execute('DROP VIEW IF EXISTS fusionax_deceased');
             XDB::execute('CREATE VIEW  fusionax_deceased AS
                                SELECT  u.user_id, a.id_ancien, u.nom, u.prenom, u.promo, u.deces AS deces_xorg, a.Date_deces AS deces_ax
-                                 FROM  auth_user_md5 i  AS u
+                                 FROM  auth_user_md5    AS u
                            INNER JOIN  fusionax_anciens AS a ON (a.id_ancien = u.matricule_ax)
                                 WHERE  u.deces != a.Date_deces');
             XDB::execute('DROP VIEW IF EXISTS fusionax_promo');
             XDB::execute('CREATE VIEW  fusionax_promo AS
                            INNER JOIN  fusionax_anciens AS a ON (a.id_ancien = u.matricule_ax)
                                 WHERE  u.deces != a.Date_deces');
             XDB::execute('DROP VIEW IF EXISTS fusionax_promo');
             XDB::execute('CREATE VIEW  fusionax_promo AS
-                               SELECT  u.user_id, u.matricule_ax, u.nom, u.prenom, u.promo AS promo_etude_xorg,
+                               SELECT  u.user_id, u.matricule_ax, CONCAT(u.nom, " ", u.prenom) AS display_name, u.promo AS promo_etude_xorg,
                                        f.promotion_etude AS promo_etude_ax, u.promo_sortie AS promo_sortie_xorg
                                  FROM  auth_user_md5    AS u
                            INNER JOIN  fusionax_anciens AS f ON (u.matricule_ax = f.id_ancien)
                                        f.promotion_etude AS promo_etude_ax, u.promo_sortie AS promo_sortie_xorg
                                  FROM  auth_user_md5    AS u
                            INNER JOIN  fusionax_anciens AS f ON (u.matricule_ax = f.id_ancien)
@@ -408,6 +409,24 @@ class FusionAxModule extends PLModule
         $page->assign('nbDeceasedDifferent', $res->total());
         $page->assign('deceasedDifferent', $res);
     }
         $page->assign('nbDeceasedDifferent', $res->total());
         $page->assign('deceasedDifferent', $res);
     }
+
+    function handler_promo(&$page, $action = '')
+    {
+        $page->changeTpl('fusionax/promo.tpl');
+        $res = XDB::iterator('SELECT  user_id, display_name, promo_etude_xorg, promo_sortie_xorg, promo_etude_ax
+                                FROM  fusionax_promo
+                               WHERE  !(promo_etude_ax + 1 = promo_etude_xorg AND promo_etude_xorg + 3 = promo_sortie_xorg)');
+        $nbMissmatchingPromos = $res->total();
+        $page->assign('nbMissmatchingPromos1', $res->total());
+        $page->assign('missmatchingPromos1', $res);
+        $res = XDB::iterator('SELECT  user_id, display_name, promo_etude_xorg, promo_sortie_xorg, promo_etude_ax
+                                FROM  fusionax_promo
+                               WHERE  promo_etude_ax + 1 = promo_etude_xorg AND promo_etude_xorg + 3 = promo_sortie_xorg');
+        $nbMissmatchingPromos += $res->total();
+        $page->assign('nbMissmatchingPromos2', $res->total());
+        $page->assign('missmatchingPromos2', $res);
+        $page->assign('nbMissmatchingPromos', $nbMissmatchingPromos);
+    }
 }
 
 // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:?>
 }
 
 // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:?>
index fe09ed3..c2b09f6 100644 (file)
@@ -3,14 +3,18 @@
 DROP TABLE IF EXISTS `fusionax_formations`;
 
 CREATE TABLE IF NOT EXISTS `fusionax_formations` (
 DROP TABLE IF EXISTS `fusionax_formations`;
 
 CREATE TABLE IF NOT EXISTS `fusionax_formations` (
-  `FO` CHAR(2) NOT NULL COMMENT 'Vaut toujours FO pour cette table',
-  `id_ancien` VARCHAR(8) NOT NULL COMMENT 'Id unique de l''ancien',
-  `Intitule_formation` VARCHAR(60) collate utf8_general_ci NOT NULL COMMENT 'Intitulé de la formation',
-  `Date_maj` DATE NOT NULL COMMENT 'Date de mise à jour de ces informations',
-  PRIMARY KEY (`id_ancien`, `Intitule_formation`)
+  FO CHAR(2) NOT NULL COMMENT 'Vaut toujours FO pour cette table',
+  id_ancien VARCHAR(8) NOT NULL COMMENT 'Id unique de l''ancien',
+  Intitule_diplome VARCHAR(60) collate utf8_general_ci NOT NULL COMMENT 'Intitulé du diplôme',
+  Intitule_formation VARCHAR(60) collate utf8_general_ci NOT NULL COMMENT 'Intitulé de la formation',
+  Descr_formation VARCHAR(60) collate utf8_general_ci NOT NULL COMMENT 'Description de la formation',
+  tmp_1 VARCHAR(60) collate utf8_general_ci NOT NULL,
+  tmp_2 VARCHAR(60) collate utf8_general_ci NOT NULL,
+  tmp_3 VARCHAR(60) collate utf8_general_ci NOT NULL,
+  tmp_4 VARCHAR(60) collate utf8_general_ci NOT NULL,
+  PRIMARY KEY (id_ancien, Intitule_diplome, Intitule_formation)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
 
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
 
-LOAD DATA LOCAL INFILE 'Formations.txt' INTO TABLE `fusionax_formations` FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n'
-(FO, id_ancien, Intitule_formation, @StringDate_maj)
-SET 
-`Date_maj` = CONCAT(SUBSTRING(@StringDate_maj,7),'-',SUBSTRING(@StringDate_maj,4,2),'-',SUBSTRING(@StringDate_maj,1,2));
+                              LOAD DATA LOCAL INFILE  'Formations.txt'
+                                          INTO TABLE  fusionax_formations
+FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n'  (FO, id_ancien, Intitule_diplome, Intitule_formation, Descr_formation, tmp_1, tmp_2, tmp_3, tmp_4);
diff --git a/modules/fusionax/formation.pl b/modules/fusionax/formation.pl
new file mode 100755 (executable)
index 0000000..3ee392a
--- /dev/null
@@ -0,0 +1,1289 @@
+#!/usr/bin/perl
+use utf8;
+open(FILE, "<:encoding(UTF-8)", "Formations.txt") || die ("Erreur d'ouverture");
+open(OUT, ">:encoding(UTF-8)", "Formations_out.txt") || die ("Erreur d'ouverture");
+
+while (<FILE>)
+{
+  # On enlève les dates de mises à jour
+  s/..\/..\/..../\t/;
+  s/..\/..\/../\t/;
+
+  s/\(//;
+  s/\)//;
+  s/3È Cycle//g;
+  s/3e cycle//g;
+  s/3e Cycle//g;
+  s/3È Cycle//g;
+  s/3ÈCycle//g;
+  s/3ÈCycle//g;
+  s/3ème cycle//g;
+  s/Master Chem\.Eng\.//g;
+  s/civ\.//g;
+  s/Civ\.//g;
+  s/ en / /g;
+  s/ ès / /g;
+  s/d'Etat//g;
+  s/ d'/ /g;
+  s/ de l'/ /g;
+  s/ de / /g;
+  s/Univ //g;
+  s/Univ\.//g;
+
+  # On enlève les fiches tordues de l'AX qui sont plus complètes chez nous et on modifie les lignes chiantes
+  s/FO\t19850253\tDEA Sciences et Techniques Environnement Créteil//;
+  s/FO\t19770064\tBiologie Moléculaire//;
+  s/FO\t19520093\tBT//;
+  s/FO\t19960133\tEngineering  Management Certificate//;
+  s/FO\t19560013\tIng I\.E\.G\.//;
+  s/FO\t19780033\tMécanique des Transfert//;
+  s/FO\t19920017\tDEA\+ Thèse Doctorat Pharmacochimie moléculaire//;
+  s/FO\t20010319\tM\.Sc\.in applied Mathematics//;
+  s/FO\t19660131\tMS Schenectady NY/FO\t19660131\tMSc\tNYU/;
+  s/FO\t19870204\tENS/FO\t19870204\tDEA\tENS Ulm/;
+  s/FO\t19910162\tDESS CAAE IAE/FO\t19910162\tDESS\tIAE de Paris/;
+  s/FO\t19950283\tDESS CAAE MBA/FO\t19950283\tMBA\tIAE de Paris/;
+  s/FO\t20020411\tME : Madrid/FO\t20020411\tME\tUPM/;
+  s/FO\t19910255\tDoct Physique Solide Paris XI/FO\t19910255\tPhD\tParis-Sud\tPhysique des solides/;
+  s/FO\t19890053\tDoct. de Physique Univ.Paris XI/FO\t19890053\tPhD\tParis-Sud\tPhysique/;
+  s/FO\t19890248\tPh.D Physique Paris XI/FO\t19890248\tPhD\tParis-Sud\tPhysique/;
+  s/FO\t19580112\tDESGE Lyon III/FO\t19580112\tDipl.\tUniversité Jean-Moulin/;
+
+  # Modifications sur une ligne complète
+  s/IHEDN-CHEAR\t/IHEDN/;
+  s/CHEBAP/Ing.\tCHEC\tCHEBAP (Centre des Hautes Etudes du Béton Armé et Précontraint)/;
+  s/Escuela Sup\. Ing\. Caminos Canales y Puertos/Dipl.\tUPM/;
+  s/MS "Technology & Policy" MIT/MSc\tMIT/;
+  s/MS&E Stanford/MSc\tStanford/;
+  s/Engineering  Management Cert.\t//;
+  s/Etudes sup\. Comptables & Financières\t//;
+
+  # On enlève les professions
+  s/Adm\. HC\t//;
+  s/Prof\. ENSMP\t//;
+  s/Prés\.hon.Colonie Fr\.du Caire\t//;
+  s/Anc\. Avocat au Bareau Toulon\t//;
+  s/Insp\.gén\.hon\.CEA\t//;
+  s/Insp\.Gén\.CRdes Aff\.d'O\.M\.\t//;
+  s/Prof Emérite Gén\. Méca\.\t//;
+  s/Prof\.Hon\.Sup\.Aéro\t//;
+  s/Anc\.DG Dassault Aviation\t//;
+  s/Prof\.des Universités\t//;
+  s/Direct\.Hon.BNP\t//;
+  s/Prof\. hon\.  Bordeaux I\t//;
+  s/Architecte DPLG\t//;
+  s/Conseiller Commercial hors classe\t//;
+  s/Professeur des Universités\t//;
+  s/Gestalt praticien\t//;
+  s/Adm\.\t//;
+  s/Psychologue Clinicien\t//;
+  s/Inspecteur des Finances\t//;
+  s/Don religion\t//;
+  s/Prof\. ENSMP\t//;
+  s/Pilote militaire Hélicoptère\t//;
+  s/Ing\. Navigant Essais Hélicoptère\t//;
+  s/Analyste SFAF\t//;
+  s/European Patent Attorney\t//;
+  s/Pilotage militaire\t//;
+  s/Mandataire agrée OEB\t//;
+  s/Chartered Financial Analyst\t//;
+  s/Pilote chasse\t//;
+  s/Avocat au Barreau Paris\t//;
+  s/Prof\.\t//;
+  s/EURATOM\t//;
+
+  # On enlève les sigles inconnus
+  s/Baccalauréat canonique\t//;
+  s/BEL\t//;
+  s/BEMS\t//;
+  s/BESG\t//;
+  s/Brth\t//;
+  s/BT\t//;
+  s/CES Informatique\t//;
+  s/CESDR\t//;
+  s/CFAF\t//;
+  s/CHEA\t//;
+  s/CHEAR\t//;
+  s/CHEE&DD Session 9\t//;
+  s/CESB\t//;
+  s/CESSID\t//;
+  s/CNAM\t//;
+  s/Collège des Sciences Soc\. et Eco\.\t//;
+  s/CRC\t//;
+  s/CSCP\t//;
+  s/CSME Session 29\t//;
+  s/D\.E\.M\.\t//;
+  s/DECF\t//;
+  s/DECS\t//;
+  s/DESA//;
+  s/DIUUP\t//;
+  s/DRES Sciences\t//;
+  s/DSN\t//;
+  s/DT\t//;
+  s/EATG\t//;
+  s/EERN//;
+  s/Ecole Chasse\t//;
+  s/ENS Armement\t//;
+  s/ENSGM\t//;
+  s/ENSME\t//;
+  s/ESMIM Nancy\t//;
+  s/ESO\t//;
+  s/ETS II\t//;
+  s/Fla USA\t//;
+  s/IAC\t//;
+  s/IAF\t//;
+  s/ICAF Washington\t//;
+  s/ICG\t//;
+  s/IESTO\t//;
+  s/IGP Bordeaux\t//;
+  s/Inst\. Auguste Comte\t//;
+  s/Institut Auguste Comte\t//;
+  s/Institut Auguste Comte IAC\t//;
+  s/Institut Contrôle Gestion//;
+  s/ISNSE Argunne National Laboratory USA\t//;
+  s/FRM\t//;
+  s/MITI Japon\t//;
+  s/MRM\t//;
+  s/Pasadena//;
+  s/React\. School Harwell\t//;
+  s/SFAF\t//;
+  s/SFAF CIIA\t//;
+  s/SM Management\t//;
+  s/Univer\. Ecolo\. Tropic\.//;
+
+  # On adapte les diplômes bien placés
+  s/Ing\./Ing.\t/;
+  s/Licenci./Lic.\t/;
+  s/Licence/Lic.\t/;
+  s/Lic\./Lic.\t/;
+  s/Deug/DEUG\t/;
+  s/DEUG/DEUG\t/;
+  s/Dipl.me/Dipl.\t/;
+  s/Dipl\./Dipl.\t/;
+  s/Anc\.El\./Dipl.\t/;
+  s/DU/Dipl.\t/;
+  s/Agr\./Agr.\t/;
+  s/Agr.g. d.Univers\./Agr.\t/;
+  s/Agrégée/Agr.\t/;
+  s/Agr.g./Agr.\t/;
+  s/Certifi./CAPES\t/;
+  s/Cert\./CAPES\t/;
+  s/CAPES/CAPES\t/;
+  s/DESCF/DESCF\t/;
+  s/DES\./DESS\t/;
+  s/DES\t/DESS\t/;
+  s/DES /DESS\t/;
+  s/DESS/DESS\t/;
+  s/DEA/DEA\t/;
+  s/Doctorat/PhD\t/;
+  s/Docteur/PhD\t/;
+  s/Doct\./PhD\t/;
+  s/Doct/PhD\t/;
+  s/Ph\.D/PhD\t/;
+  s/PhD/PhD\t/;
+  s/Ph D/PhD\t/;
+  s/Dr\./PhD\t/;
+  s/Doc\./PhD\t/;
+  s/Th.se/PhD\t/;
+  s/doctorat oncogénèse/PhD\t/;
+  s/HDR/HDR\t/;
+  s/HdR/HDR\t/;
+  s/Habil\. Dir\.Recherche/HDR\t/;
+  s/Habilitation à diriger les recherches/HDR\t/;
+  s/Habilitation à Diriger des Recherche/HDR\t/;
+  s/Habilitation à diriger des Recherches/HDR\t/;
+  s/Habilitation à diriger des Rech\./HDR\t/;
+  s/Habilitation à diriger des recherches/HDR\t/;
+  s/Habilitation U\./HDR\t/;
+  s/Habilitation/HDR\t/;
+  s/Habil\./HDR\t/;
+  s/Habilité à la dir\. rech\./HDR\t/;
+  s/MSUCLA/MSc\tUCLA/;
+  s/MSc /MSc\t/;
+  s/MS /MSc\t/;
+  s/MS\t/MSc\t/;
+  s/MS\./MSc\t/;
+  s/M\.Sc\./MSc\t/;
+  s/M\.Sc/MSc\t/;
+  s/M\. Sc\./MSc\t/;
+  s/Master of Sciences/MSc\t/;
+  s/Master of Science/MSc\t/;
+  s/Masters of Sciences/MSc\t/;
+  s/Master Urbanisme/MUP\t/;
+  s/MCityPlann/MUP\t/;
+  s/MCP/MUP\t/;
+  s/MUP/MUP\t/;
+  s/Executive MBA/MBA/;
+  s/EMBA/MBA/;
+  s/MBA/MBA\t/;
+  s/BTS/BTS\t/;
+  s/M\. A\./MA\t/;
+  s/M\.A\./MA\t/;
+  s/\tMA/\tMA\t/;
+  s/Executive MA/MA\t/;
+  s/ME/ME\t/;
+  s/M\.Eco\.Agric\./MEE\t/;
+  s/M\.Eco\./ME\t/;
+  s/M\. Eng\./MEng\t/;
+  s/Master Ing\./MEng\t/;
+  s/Masters of Electrical Engineering/MEE\t/;
+  s/MEE/MEE\t/;
+  s/MSEE/MEE\t/;
+  s/Ma.trise/Maîtr.\t/;
+  s/Ma.tre/Maîtr.\t/;
+  s/Mphil/MPhil\t/;
+  s/M\.Phil\./MPhil\t/;
+  s/MPhil/MPhil\t/;
+  s/MPA/MPA\t/;
+  s/MCP/MCP\t/;
+  s/Master Electronique/MEl\t/;
+  s/MEl/MEl\t/;
+  s/Master Management par les comp.tences et organisations/MM\t/;
+  s/Master of Management/MM\t/;
+  s/Management Paris/\tManagement/;
+  s/DDI/Dipl.\t/;
+  s/3.me Cycle Fac\./Dipl.\t/;
+  s/MIB/MIB\t/;
+  s/Master of Eng in Manufacturing/MEM\t/;
+  s/Master Engin.Science/MEng\t/;
+  s/BA /BA\t/;
+  s/Post Doc//;
+  s/Post PhD//;
+  s/Auditeur/Dipl.\t/;
+  s/Dr Phys\.chim\.biotransformation/PhD\t\tPhysique, chimie, biotransformation/;
+
+  # On nettoye les tab en trop et les ponctutions inutiles
+  s/\t\t\t/\t/g;
+  s/\t\t/\t/g;
+  s/\t,/\t/g;
+  s/\t-/\t/g;
+  s/\t:/\t/g;
+  s/\t\./\t/g;
+  s/(\t)( )+/\t/g;
+  s/\ten /\t/g;
+  s/\tin /\t/g;
+  s/\tès /\t/g;
+  s/\tof /\t/g;
+  s/( )+(\t)/\t/g;
+  
+
+  # On remet dans l'ordre lorsque le diplôme se situe après l'université
+  s/Manag\.Vanderblit/Vanderbilt University\tManagement/;
+  s/AMHERST MA/MA\tAmherst College/;
+  s/Executive Education, Harvard \tBusiness School/MBA\tHarvard/;
+  s/Harvard MPA/MPA\tHarvard/;
+  s/Harvard MA/MA\tHarvard/;
+  s/Advanced Manag\. Program Harvard/Harvard/;
+  s/DEA : ENS/DEA\tENS Ulm/;
+  s/ENS Ulm DEA/DEA\tENS Ulm/;
+  s/ENS Ulm :DEA/DEA\tENS Ulm/;
+  s/ENS Ulm : DEA/DEA\tENS Ulm/;
+  s/ENS Ulm : PhD/PhD\tENS Ulm/;
+  s/ENS Ulm/MSc\tENS Ulm/;
+  s/Ecole Normale Sup.Ulm/MSc\tENS Ulm/;
+  s/\tENS\t/\tENS Ulm/;
+  s/Moscow : ME/ME\tBauman MSTU/;
+  s/Supoptique : Ing\./Ing.\tSupOptique/;
+  s/EP Montr.al Ing\./Ing.\tEPM/;
+  s/EP Montr.al Ing/Ing.\tEPM/;
+  s/EP Montr.al MSc/MSc\tEPM/;
+  s/EP Montr.al MS/MSc\tEPM/;
+  s/MsChicago/MSc\tUniversity of Chicago/;
+  s/Sciences Po/Sciences Po\t/;
+  s/IEP DEA/DEA\tSciences Po/;
+  s/Master AMUR/MUP\tPonts\tMastère AMUR/;
+  s/Master CAR/MSc\tTélécom\tMastère CAR/;
+  s/Mastère SSIR ENST/MSc\tTélécom\tMastère SSIR/;
+  s/KTH Stockholm Master Mech. Eng./MME\tKTH/;
+  s/ESCP-EAP Executive MSc/MSc\tESCP-EAP/;
+  s/Biologie Paris VI/Paris VI\tBiologie/;
+  s/HEC : MS/MSc\tHEC/;
+  s/HEC : MA/MA\tHEC/;
+  s/HEC : MBA/MBA\tHEC/;
+  s/Master HEC Entrepreneurs/ME\tHEC\tHEC-Entrepreneurs /;
+  s/HEC-Entrepreneurs/ME\tHEC\tHEC-Entrepreneurs /;
+  s/Master HEC Finance/ME\tHEC/;
+  s/Strategic Management HEC/HEC\tStrategic Management/;
+  s/Marketing HEC/HEC\tMarketing/;
+  s/Economie EHESS-ENSAE/EHESS\tÉconomie/;
+  s/EHESS : PhD/PhD\tEHESS/;
+  s/EHESS DEA/DEA\tEHESS/;
+  s/EHESS Phd/PhD\tEHESS/;
+  s/ESSEC Mast.re Tehniques Financi.res/ME\tESSEC\tMastère Techniques Financières/;
+  s/ESSEC : MA/MA\tESSEC/;
+  s/ESSEC-MANNHEIM/ESSEC/;
+  s/ESSEC : MBA/MBA\tESSEC/;
+  s/M.decine : Dipl\./Dipl.\tMédecine/;
+  s/Sup.A.ro\. : PhD/PhD\tSUPAERO/;
+  s/INSEAD : MA/MA\tINSEAD/;
+  s/INSEAD : MBA/MBA\tINSEAD/;
+  s/TU Berlin :ME/ME\tTU Berlin/;
+  s/Mast.re Am.nagement et Ma.tr./MUP\t\tMastère Aménagement et Maîtr./;
+  s/Master Droit des affaires Int. & Eur./MIB\t\tMaster Droit des affaires Int. & Eur./;
+  s/Finance LSE/LSE\tFinance/;
+  s/Finance London Business School/London Business School\tFinance/;
+  s/Chimie Organique ENSTA/ENSTA\tChimie organique/;
+  s/Informatique Stanford/Stanford\tInformatique/;
+
+  # On normalise les universités
+  s/Dipl ISUP\t/Dipl.\tUMPC\t/;
+  s/ISUP\t/Dipl.\tUMPC\t/;
+  s/DESIA\t/Dipl.\tSUPAERO\t/;
+  s/IHESI\t/Dipl.\tINHES\t/;
+  s/Ctre Form\.Journaliste\t/Dipl.\tCFJ\t/;
+  s/Collège InterArmées Défense\t/Dipl.\tCollège Interarmées de Défense\t/;
+  s/AFITEP\t/Dipl.\tAFITEP\t/;
+  s/CEDEP cycle 43\t/CEDEP\t/;
+  s/CEDEP\t/Dipl.\tCEDEP\t/;
+  s/Bocconi University Milan/Dipl.\tUniversità Bocconi/;
+  s/Columbia\t/Columbia University\t/;
+  s/EMP Columbia Bus\.School\./Dipl.\tColumbia University/;
+  s/Columbia & sciences Po/Columbia University/;
+  s/Columbia \+ LBS/Columbia University/;
+  s/Columbia University & sciences Po/Columbia University/;
+  s/Columbia University + LBS/Columbia University/;
+  s/CESS ENSAÉ/Dipl.\tENSAE/;
+  s/EAPB Ecole Architecture Paris Belleville/Dipl.\tENSAPB/;
+  s/EDP\/INSEAD/Dipl.\tINSEAD/;
+  s/PSD INSEAD/Dipl.\tINSEAD/;
+  s/INSEAD/Dipl.\tINSEAD/;
+  s/EDP\/INSEAD/Dipl.\tINSEAD/;
+  s/INSEAD/Dipl.\tINSEAD/;
+  s/PSD INSEAD/Dipl.\tINSEAD\tProgramme Supérieur pour Dirigeants/;
+  s/INSEAD - AMP/Dipl.\tINSEAD/;
+  s/INSEAD Executive Program/Dipl.\tINSEAD/;
+  s/IMI Harvard/Dipl.\tHarvard/;
+  s/Advanced Manag\. Program Harvard/MBA\tHarvard/;
+  s/Harvard Business Sch\. Alumnus/Dipl.\tHarvard/;
+  s/Executive Education, Harvard Business School/Dipl.\tHarvard/;
+  s/Harvard/Dipl.\tHarvard/;
+  s/Havard/Harvard/;
+  s/M\. Eng Cornell University/MEng\tCornell/;
+  s/Cornell Ithaca/Cornell/;
+  s/Cornell NY/Cornell/;
+  s/NY\t/NYU\t/;
+  s/New-York/NYU/;
+  s/New York University/NYU/;
+  s/New York/NYU/;
+  s/MS Politecnico di Milano/MSc\tPolitecnico di Milano/;
+  s/\tMilano/\tPolitecnico di Milano/;
+  s/Computer Sc\.MIT/MIT\tComputer science/;
+  s/Techno\.Policy MIT/MIT\tTechno. Policy/;
+  s/NA MIT/MA\tMIT/;
+  s/MIT/Dipl.\tMIT\t/;
+  s/MIT Chemical Engineering/MCE\tMIT/;
+  s/Massuchusetts Institute of Technology/MIT/;
+  s/Massachusetts Institute of Technologie/MIT/;
+  s/Massachusetts Institute of Techn\./MIT/;
+  s/Massachusetts Inst\. of Technology/MIT/;
+  s/Massachusetts Inst of Tech/MIT/;
+  s/Massachusetts/MIT/;
+  s/Msc\.Massachus\./MIT/;
+  s/Sup.A.ro./Ing.\tSUPAERO/;
+  s/Sup.A.ro.\/KTH/Ing.\tSUPAERO/;
+  s/Aéro\./SUPAERO/;
+  s/SUPAEROAstro &EECS/SUPAERO/;
+  s/SUPAERO\/KTH/SUPAERO/;
+  s/Syracuse USA/Dipl.\tSU/;
+  s/EHESS/Dipl.\tEHESS/;
+  s/IHEDN/Dipl.\tIHEDN/;
+  s/IHEDN 26° session/Dipl.\tIHEDN/;
+  s/Business School Dartmouth/Dipl.\tDartmouth College /;
+  s/ENSAE/Dipl.\tENSAE/;
+  s/ENSAE Statisticien économiste/Dipl.\tENSAE/;
+  s/ENSAE Malakoff/Dipl.\tENSAE/;
+  s/\tIllinois\t/\tUniversity of Illinois\t/;
+  s/University of Illinois/Dipl.\tUniversity of Illinois/;
+  s/CEPE/Dipl.\tCEPE/;
+  s/CEPE Ecole Pratique des Hautes Etudes/Dipl.\tCEPE/;
+  s/ECE/Ing.\tECE/;
+  s/Ecole Centrale d’Electronique ECE/Ing.\tECE/;
+  s/Science Stanford/Stanford\tSience/;
+  s/Econom\.Stanford/Stanford\tÉconomie/;
+  s/Electrical Eng Stanford/Stanford\tElectrical engineering/;
+  s/Management a Stanford/Stanford\tManagement/;
+  s/SEP Stanford/Dipl.\Stanford/;
+  s/Stanford SEP/Dipl.\tStanford/;
+  s/Stanford/Dipl.\tStanford/;
+  s/Stanford Executive Program/Dipl.\tStanford/;
+  s/Stanford University/Dipl.\tStanford/;
+  s/Stanford /Stanford\t/;
+  s/Sc\.Po\. Paris/Dipl.\tSciences Po\t/;
+  s/Sc\.Po\. Economie/Dipl.\tSciences Po\t/;
+  s/Sc\.Po\. Gestion et Strat.gie des Entreprises/Dipl.\tSciences Po\tGestion et Stratégie des Entreprises/;
+  s/Sc\.Po\./Dipl.\tSciences Po/;
+  s/Lauréat IEP/Dipl.\tSciences Po/;
+  s/IEP Paris Lic\./Dipl.\tSciences Po/;
+  s/IEP Paris/Dipl.\tSciences Po/;
+  s/IEP/Dipl.\tSciences Po/;
+  s/Auditeur Sc\.Politique/Dipl.\tSciences Po\t/;
+  s/Sciences politiques/Sciences Po/;
+  s/Sc\.Politique/Sciences Po/;
+  s/IAE Paris/MBA\tIAE de Paris/;
+  s/\tIAE\t/\tMBA\tIAE de Paris\t/;
+  s/EPNER/Dipl.\tEPNER/;
+  s/ENSAR/Ing.\tENSAR/;
+  s/Uc.Berkeley/Berkeley/;
+  s/UC Berkeley/Dipl.\tBerkeley/;
+  s/CEIPI/Dipl.\tCEIPI/;
+  s/Institute for Management Development/IMD/;
+  s/\tLausanne/\tUNIL/;
+  s/IMD Lausanne/Dipl.\tUNIL/;
+  s/EP F.d.ration Lausanne/Dipl.\tEPFL/;
+  s/EP F.d.rale Lausanne/Dipl.\tEPFL/;
+  s/cycle postgrade EPFL option Finance/Dipl.\tEPFL\toption Finance/;
+  s/Ecol\. Poly\. F.d.rale Lausanne/Dipl.\tEPFL/;
+  s/EP F.d.rale Lausanne/Dipl.\tEPFL/;
+  s/EPFL G.nie Mécanique/Dipl.\tEPFL\tGénie Mécanique/;
+  s/EP F.d.rale Lausane/Dipl.\tEPFL/;
+  s/Ecole Polytechnique Lausanne/EPFL/;
+  s/ISMCM Saint-Ouen/Dipl.\tISMCM Saint-Ouen/;
+  s/ISCM/ISMCM Saint-Ouen/;
+  s/ENAC/Dipl.\tENAC/;
+  s/HEC\/Ucla/HEC/;
+  s/Mast.re Gestion Financi.re HEC/ME\tHEC\tMastère Gestion Financière/;
+  s/\tHEC/\tDipl.\tHEC/;
+  s/CPA-HEC/HEC/;
+  s/HEC Master Gestion du Changement/ME\tHEC\tMaster Gestion du Changement/;
+  s/HEC Execut\. Management \/ CPA/Dipl.\tHEC/;
+  s/HEC Majeure Finance/Dipl.\tHEC\tMajeure Finance/;
+  s/CESA  Achats HEC Management/Dipl.\tHEC/;
+  s/HEC Entrepreneurs/Dipl.\tHEC/;
+  s/HECc/HEC/;
+  s/HEC\/CPA/HEC/;
+  s/HEC Start\. Management/HEC\tStart. Management/;
+  s/HEC Finance/HEC\tFinance/;
+  s/Centre des Hautes Etudes la Construction/Ing.\tCHEC/;
+  s/CHEC/Ing.\tCHEC/;
+  s/Ecole Air/Dipl.\tÉcole de l\'Air/;
+  s/EAVT/Dipl.\tEAVT/;
+  s/EAVT Ecole architecture Marne La Vall.e/Dipl.\tEAVT/;
+  s/Master ENPC Action publique/M\tPonts\tMaster Action publique/;
+  s/ENPC/Ing.\tPonts/;
+  s/Master P\.C\./MSc\tPonts/;
+  s/P\.C\./Ponts\t/;
+  s/EAPLV Ecole Architecture Paris La Villette/Dipl.\tENSAPLV/;
+  s/EAPLV/Dipl.\tENSAPLV/;
+  s/Cambridge Profic\./Dipl.\tCambridge/;
+  s/London Business School/Dipl.\tLondon Business School/;
+  s/ENSIC/Dipl.\tENSIC/;
+  s/ENSIC Nancy/Ing.\tENSIC/;
+  s/Internat\. Teachers Progr./Dipl.\tITP/;
+  s/Institut Sup.rieur des Affaires/Dipl.\tISA/;
+  s/ISA/Dipl.\tISA/;
+  s/ISAA/Dipl.\tISAA/;
+  s/ENSCP/Ing.\tChimie Paris/;
+  s/Engineer Kentucky/Ing.\tUK/;
+  s/EP Gda.sk Pologne/Dipl.\tUniwersytet Gdański/;
+  s/ESPCI/Ing.\tESPCI/;
+  s/ESPCI Ecole Sup\. Phys\. et Chimie Industrielles/Ing.\tESPCI/;
+  s/ESG/Dipl.\tESG Paris/;
+  s/ESSEC Management g.n.ral/Dipl.\tESSEC/;
+  s/ESSEC/Dipl.\tESSEC/;
+  s/Ecole Nat. Eaux et For.t Nancy/Ing.\tENGREF/;
+  s/Sc\. environnement ENGREF/ENGREF\tSciences environnementales/;
+  s/\tGREF/\tENGREF/;
+  s/du Québec à Montréal/UQÀM/;
+  s/EP Montréal/Dipl.\tEPM/;
+  s/Mast\.Biotechnology Montréal/MB\tEPM/;
+  s/Montréal/EPM/;
+  s/Québec/UQÀM/;
+  s/Ec\.Polyt\.Montreal/EPM/;
+  s/Actuaire/Dipl.\tInstitut des Actuaires/;
+  s/Actuaire IAF-CEA/Dipl.\tInstitut des Actuaires/;
+  s/Actuaire IAF/Dipl.\tInstitut des Actuaires/;
+  s/Actuaire CEA/Dipl.\tInstitut des Actuaires/;
+  s/Actuariat-Iaf/Dipl.\tInstitut des Actuaires/;
+  s/Actuaire qualifi./Dipl.\tInstitut des Actuaires/;
+  s/Institut des Actuaires qualifié/Institut des Actuaires/;
+  s/Institut des Actuaires IAF-/Institut des Actuaires/;
+  s/STEGE MGT GENERAL ESCP-EAP/Dipl.\tESCP-EAP/;
+  s/ESCP-EAP/Dipl.\tESCP-EAP/;
+  s/\tESCP\t/\tESCP-EAP\t/;
+  s/IHEE/Dipl.\tIHEE/;
+  s/ENS G.ographiques/Corps\tGéographes/;
+  s/Ecole Nat. des Sc. G.ographiques/Corps\tGéographes/;
+  s/ENST Bretagne/Ing.\tTélécom Bretagne/;
+  s/Collède des Ing\./CDI/;
+  s/Collège des Ing\./CDI/;
+  s/Collège Ing\./CDI/;
+  s/Collèges des Ing\./CDI/;
+  s/Collège des Ingénieurs/CDI/;
+  s/CDI/Dipl.\tCDI/;
+  s/Ecole Nationale la Magistrature/Dipl.\tENM/;
+  s/ENSTA/Ing.\tENSTA/;
+  s/\tGM\t/\tENSTA\t/;
+  s/ENSP Versailles/Dipl.\tENSP/;
+  s/ENSP/Dipl.\tENSP/;
+  s/Investment Banking Program-Kellog School of Management/Dipl.\tKellogg/;
+  s/IFSBM/Dipl.\tIFSBM/;
+  s/Inst\.Form\. Sup\.Biom.dicale/Dipl.\tIFSBM/;
+  s/EMA/Ing.\tEMA/;
+  s/Ecole Supérieure Electricité/Ing.\tSupélec/;
+  s/ESE/Ing.\tSupélec/;
+  s/Supelec 86 - MBA/Supélec/;
+  s/UCSD/Dipl.\tUCSD\t/;
+  s/UC San Diego/UCSD/;
+  s/San Diego/UCSD/;
+  s/California UCSD/UCSD/;
+  s/ENSAM/Ing.\tENSAM/;
+  s/Arts et Métiers/ENSAM/;
+  s/IFFI/ENSAM\tIFFI/;
+  s/USMC Command & Staff College/MSc\tMCU/;
+  s/University Coll.Londres/Dipl.\tUCL/;
+  s/TU Munich/TU München/;
+  s/TU M.nchen/Dipl.\tTU München/;
+  s/\tMünchen/\tTU München/;
+  s/\tM\.\t/\tMines\t/;
+  s/Mines Paris/Mines/;
+  s/ENSMP/Ing.\tMines/;
+  s/ISIGE/Mines\tISIGE/;
+  s/LSE/Dipl.\tLSE/;
+  s/London School Econ\.& Polit\. Sc\./LSE/;
+  s/London School Economics/LSE/;
+  s/London School of Eco\./LSE/;
+  s/London School of Econ\./LSE/;
+  s/London School of Economics/LSE/;
+  s/Lonson School of Economics/LSE/;
+  s/Chartered Institute of Management  Accountant/M\tCIMA/;
+  s/CFA/Dipl.\tCFA Institute/;
+  s/INAPG/Ing.\tINAPG/;
+  s/Agronome/Ing.\tINAPG/;
+  s/Agro/Ing.\tINAPG/;
+  s/INA PG/INAPG/;
+  s/Naval Postgraduate School/Dipl.\tNPS/;
+  s/ENSSEIHT Informatique/Ing.\tENSEEIHT/;
+  s/ENSEEIHT/Ing.\tENSEEIHT/;
+  s/ENSEEIHT Toulouse/ENSEEIHT/;
+  s/ENA/Dipl.\tENA/;
+  s/Colorado\t/Colorado School of Mines/;
+  s/Colorado Scholl of MInes/Dipl.\tColorado School of Mines/;
+  s/Colorado school of Mines/Dipl.\tColorado School of Mines/;
+  s/Ing RWTH-Aachen/Ing.\tRWTH/;
+  s/Ing  RWTH-Aachen/Ing.\tRWTH/;
+  s/RWTH Aachen/Dipl.\tRWTH/;
+  s/TH Aachen/RWTH/;
+  s/RWTH-Aachen/RWTH/;
+  s/Th Aachen/RWTH/;
+  s/UCLA\t/Dipl.\tUCLA\t/;
+  s/Computer Sc\.Ucla/UCLA/;
+  s/UCLA Anderson/UCLA/;
+  s/Los Angeles/UCLA/;
+  s/Royal College of Art Londres/Dipl.\tRCA/;
+  s/Royal College of Art Londres /Dipl.\tRCA/;
+  s/de Caminos Madrid/UPM/;
+  s/Ingeniero Industrial UPM Madrid/Ing.\tUPM/;
+  s/ETSII Madrid/Dipl.\tUPM/;
+  s/Madrid/Dipl.\tUPM/;
+  s/ENS Cachan/Dipl.\tENS Cachan/;
+  s/\tCachan/\tENS Cachan/;
+  s/ENS CACHAN/ENS Cachan/;
+  s/ENS Cachan Math Appliquée/ENS Cachan\tMathématiques appliquées/;
+  s/Collège Europe Natolin Varsovie/Dipl.\tCollege of Europe/;
+  s/Collège Europ\.Bruges/\tCollege of Europe/;
+  s/New South Wales Sydney Australia/UNSW/;
+  s/New South Wales Sydney Austr\./UNSW/;
+  s/New South Wales/UNSW/;
+  s/Master of Env. Engin. Science UNSW Sydney/MEE\tUNSW/;
+  s/S Sydney/UNSW/;
+  s/Design UNSW/UNSW\tDesign/;
+  s/Interne Chirurgie/Dipl.\tMédecine/;
+  s/X-HEC/X\t/;
+  s/X Chimie Orga/X\tChimie organique/;
+  s/X Physique/Physique/;
+  s/X Math app\./Mathématiques appliquées/;
+  s/Chimie Ec\. Polyt\./X\tChimie/;
+  s/Master X Projet-Innovation-Conception/MSc\tX\tMaster X Projet-Innovation-Conception/;
+  s/Master PIC/M\tX\tMaster PIC/;
+  s/Ec\. Polyt\./X\t/;
+  s/Supoptique/Ing.\tSupOptique/;
+  s/Universiteit/Universiteit Leiden/;
+  s/\tLeiden/\tDipl.\tUniversiteit Leiden/;
+  s/Phys.Théor. ENS Lyon/ENS Lyon\tPhysique théorique/;
+  s/ENS Lyon/Dipl.\tENS Lyon/;
+  s/- U of Michigan/Michigan/;
+  s/Eng Birmingham/University of Birmingham/;
+  s/Imperial Collège/Imperial College/;
+  s/Advanced Mechanical Engin\. , Imperial College Londres/Imperial College\tAdvanced mechanical engineering/;
+  s/Imperial College GB/Imperial College/;
+  s/Boulder/CU/;
+  s/Californie Institute of Technology/CalTech/;
+  s/CIT/CalTech/;
+  s/Carnegie Mellon/CMU/;
+  s/Comput\.Carnégie Mellon Univ/CMU/;
+  s/Caroline du Nord Chapel Hill/Carolina/;
+  s/Ctre Perf\. aux Affaires/CPA de Paris/;
+  s/Centre Perfect\. aux Affaires/CPA de Paris/;
+  s/Centre Perfection\. aux Affaires/CPA de Paris/;
+  s/CPA\t/MBA\tCPA de Paris/;
+  s/CPA 73\/2\t/MBA\tCPA de Paris/;
+  s/CPA Lyon\t/MBA\tCPA de Lyon/;
+  s/CPA Nord\t/MBA\tCPA du Nord/;
+  s/\tChicago/\tUniversity of Chicago/;
+  s/Econom\.Chicago/University of Chicago\tÉconomie/;
+  s/Cleveland/CSU/;
+  s/Architect\.Univers\.Rome/University of Rome\tArchitecture/;
+  s/d'University of Rome/University of Rome/;
+  s/\tUC Davis/\tUC Davis/;
+  s/\tDavis/\tUC Davis/;
+  s/University of California/UCSB/;
+  s/Université Tokyo/Todai/;
+  s/Tokyo/Todai/;
+  s/Université Stuttgart/Universität Stuttgart/;
+  s/\tStuttgart\t/\tUniversität Stuttgart\t/;
+  s/diplomé Fac\. Aéronautique Stuttgart/Universität Stuttgart\tAéronautique/;
+  s/Zürich/Universität Zürich/;
+  s/Zurich/Universität Zürich/;
+  s/Ec\.Polyt\.Universität Zürich/ETH Zürich/;
+  s/Yale/Yale\t/;
+  s/Wisconsin-Madison/UW-Madison/;
+  s/Wisconsin USA/UW-Madison/;
+  s/Wisconsin/UW-Madison/;
+  s/Wharton/The Wharton School/;
+  s/Pennsylvania The Wharton School/The Wharton School/;
+  s/Pennsylvania\t/University of Pennsylvania\t/;
+  s/Washington/University of Washington/;
+  s/Urbana/Urbana University/;
+  s/Stat\.Texas A&M/TAMU/;
+  s/Texas A&M/TAMU/;
+  s/TAMU University/TAMU/;
+  s/Austin/UT Austin/;
+  s/Texas/UT Austin/;
+  s/UBC Canada/UBC/;
+  s/Torino/UNITO/;
+  s/Téléc\./Télécom/;
+  s/ENST\t/Télécom\t/;
+  s/ENST licencié  sciences économiques/Télécom\tLicenci sciences économiques/;
+  s/Southampton/University of Southampton/;
+  s/Nat\. of Singapore/NUS/;
+  s/Singapour/NUS/;
+  s/Kyoto/Kyoto University/;
+  s/Karlsruhe/Universität Karlsruhe/;
+  s/Johns Hopkins/JHU/;
+  s/Sheffield/University of Sheffield/;
+  s/Santa Barbara/UCSB/;
+  s/Salt Lake City/University of Utah/;
+  s/Rotterdam School of Management/RSM/;
+  s/Queen's Canada/Queen's/;
+  s/Purdue/Purdue University/;
+  s/Pompeu Fabra/UPF/;
+  s/Polytech\. Bucarest/Universitatea Politehnica din Bucureşti/;
+  s/Petroleum Engineering - TU Delft/TU Delft\tPetroleum engineering/;
+  s/Paris Paris-Diderot/Paris-Diderot/;
+  s/Watson School of Biological/WSBS/;
+  s/Ottawa/OU/;
+  s/Northwestern University/NU/;
+  s/Northwestern/NU/;
+  s/N\.Dame Indiana/Notre Dame/;
+  s/Moscow/MGU/;
+  s/Mc Gill University/McGill/;
+  s/Maryland/UMCP/;
+  s/Iowa/University of Iowa /;
+  s/Institut Polytechnique Grenoble/Grenoble INP/;
+  s/INPG/Grenoble INP/;
+  s/INPL Institut National Polytechnique Lorraine/INPL/;
+  s/INP Toulouse/INP Toulouse\t/;
+  s/IHM INPT/INP Toulouse\tIHM/;
+  s/ENSPM/ENSPM\t/;
+  s/IFP/ENSPM/;
+  s/Houston/UH/;
+  s/Georgia\t/UGA\t/;
+  s/Finance Princeton/Princeton\tFinance/;
+  s/Elect\.Engineer\.Princeton/Princeton\tElectrical engineering/;
+  s/ENSHG/ENSHMG/;
+  s/Dallas/University of Dallas/;
+  s/British Columbia University/UBC/;
+
+  s/\tSorbonne\t/\tPanthéon-Sorbonne\t/;
+  s/\t1\t/\tPanthéon-Sorbonne\t/;
+  s/Finance Paris I/Panthéon-Sorbonne\tFinance/;
+  s/Sc.Eco.  Paris 1/Panthéon-Sorbonne\tSciences économiques/;
+  s/CAAE \. Paris I/Panthéon-Sorbonne/;
+  s/Paris 1er/Panthéon-Sorbonne/;
+  s/Paris 1 Modélisation Econ\.& Fin\./Panthéon-Sorbonne\tModélisation économie et finance/;
+  s/Paris 1\t/Panthéon-Sorbonne\t/;
+  s/Philo\.Paris I/Panthéon-Sorbonne\tPhilosophie/;
+  s/Paris I\t/Panthéon-Sorbonne\t/;
+  s/Droit Paris 2/Assas\tDroit/;
+  s/Paris 2/Assas/;
+  s/Paris II Panthéon - Assas/Assas/;
+  s/Paris II Panthéon/Assas/;
+  s/Paris-Sorbonne/Paris-Sorbonne\t/;
+  s/Philosophie Paris IV Sorbonne/Paris-Sorbonne\tPhilosophie/;
+  s/Paris 4/Paris-Sorbonne/;
+  s/Paris IV/Paris-Sorbonne\t/;
+  s/Paris 5/Paris-Descartes/;
+  s/Paris V\t/Paris-Descartes\t/;
+  s/Université Paris V/Paris-Descartes/;
+  s/UMPC/UMPC\t/;
+  s/et Habil\. à diriger les Rech\. Paris 6/UMPC/;
+  s/Stat. Paris 6/UMPC\tStatistiques/;
+  s/Sc\.des Matériaux Paris VI/UMPC\tScience des matériaux/;
+  s/Probabilités Paris VI/UMPC\tProbabilités/;
+  s/Probabilités et Finanace Paris VI/UMPC\tProbabilités et finance/;
+  s/Probab\. & Applications Paris 6/UMPC\tProbabilités et applications/;
+  s/Paris 6 Jussieu/UMPC/;
+  s/Paris 6/UMPC\t/;
+  s/Paris VI Pierre & Marie Curie/UMPC/;
+  s/paris VI\t/UMPC\t/;
+  s/Paris VI\t/UMPC\t/;
+  s/Paris VI Ecologie/UMPC\tÉcologie/;
+  s/ParisVI Proba\. & Finance/UMPC\tProbabilité et finance/;
+  s/Paris VI Finance/UMPC\tFinance/;
+  s/Paris VI Physique quantique/UMPC\tPhysique quantique/;
+  s/Paris VI Spéc\.Physique des Solides/UMPC\tPhysique des Solides/;
+  s/2 Proba\. & Finance Paris VI/UMPC\tProbabilité et finance/;
+  s/Biologie Paris VI/UMPC\tBiologie/;
+  s/CPM/UMPC/;
+  s/IARFAG Paris VI/UMPC\tInformatique/;
+  s/IARFAG/UMPC\tInformatique/;
+  s/Informatique - Paris 6/UMPC\tInformatique/;
+  s/Analyse numérique Paris VI/UMPC\tAnalyse numérique/;
+  s/\tParis\t/\tUMPC\t/;
+  s/TACS Dipl\./UMPC\tMaster Techniques Avancées en Calcul des Structures/;
+  s/Informatique - UMPC/UMPC\tInformatique/;
+  s/Analyse numérique UMPC/UMPC\tAnalyse numérique/;
+  s/à diriger les Rech\. UMPC/UMPC/;
+  s/2 Proba\. & Finance UMPC/UMPC\tProbabilité et finance/;
+  s/Japonais Paris VII/Paris-Diderot\tJaponais/;
+  s/Jussieu Paris 7/Paris-Diderot/;
+  s/Jussieu/Paris-Diderot/;
+  s/Math\. Appliquées Paris VII/Paris-Diderot\tMathématiques appliquées/;
+  s/Télédétection Paris VII/Paris-Diderot\tTélédétection/;
+  s/Physique des Solides  Paris VII/Paris-Diderot\tPhysique des solides/;
+  s/Paris 7/Paris-Diderot/;
+  s/Paris VII\t/Paris-Diderot\t/;
+  s/Univers\.Paris VII Math\./Paris-Diderot\tMathématiques/;
+  s/Télécom Paris-Diderot/Paris-Diderot/;
+  s/Paris Paris-Diderot/Paris-Diderot/;
+  s/Paris 8/Vincennes-Saint-Denis/;
+  s/ANLA Paris IX/Dauphine/;
+  s/Economie Paris Dauphine/Dauphine\tÉconomie/;
+  s/Economie Ind. Paris IX/Dauphine\tÉconomie/;
+  s/Economie Ind. Paris Dauphine/Dauphine\tÉconomie/;
+  s/Paris 9/Dauphine/;
+  s/Paris Dauphine/Dauphine/;
+  s/Paris IX/Dauphine/;
+  s/Sc\.Econ\. Dauphine/Dauphine\tÉconomie/;
+  s/Gestion Publique Dauphine/Dauphine\tGestion publique/;
+  s/Economie ind\. Dauphine/Dauphine\tÉconomie/;
+  s/Paris X Philo. Esthétique/Nanterre\tPhilosophie/;
+  s/Paris X\t/Nanterre/;
+  s/Paris 10/Nanterre/;
+  s/Physique Paris XI/Paris-Sud\tPhysique/;
+  s/écologie Paris XI/Paris-Sud\tÉcologie/;
+  s/Univers\. Paris Sud/Paris-Sud/;
+  s/Paris XI\t/M\tParis-Sud\t/;
+  s/Paris XI Electronique/Paris-Sud\tÉlectronique/;
+  s/Master Paris 11/M\tParis-Sud/;
+  s/Master  Paris 11/M\tParis-Sud/;
+  s/écologie Paris XI/Paris-Sud\tÉcologie/;
+  s/ATS Orsay/Paris-Sud/;
+  s/Paris 11 Orsay/Paris-Sud/;
+  s/Paris 11/Paris-Sud/;
+  s/paris 11/Paris-Sud/;
+  s/Orsay/Paris-Sud/;
+  s/Santé Publique  Paris Sud/Paris-Sud\tSanté publique/;
+  s/Physique XI/Paris-Sud\tPhysique/;
+  s/Paris Paris-Sud/Paris-Sud/;
+  s/Droit des Affaires  Paris 12/Paris-Val de Marne\tDroit des affaires/;
+  s/Paris 12/Paris-Val de Marne/;
+  s/Paris XII\t/Paris-Val de Marne\t/;
+  s/IUP Paris-Val de Marne/Paris-Val de Marne/;
+  s/Paris 13/Paris-Nord/;
+  s/Paris XIII/Paris-Nord/;
+  s/Aix Marseille II/Université de Provence/;
+  s/Université Lyon I/Université Claude Bernard/;
+  s/Lyon I/Université Claude Bernard/;
+  s/Paul-Sabatier/Université Paul-Sabatier/;
+  s/P\.Sabatier/Université Paul-Sabatier/;
+  s/ECP/Centrale Paris/;
+  s/Ecole Centrale/Centrale Paris/;
+  s/Catolica Chile/PUC/;
+  s/Catalunya/UOC/;
+  s/Californie Irvine/UCI/;
+  s/Californie/UCSD/;
+
+  s/Master Adm. des Entreprises/MBA\t\tMaster Administration des Entreprises/;
+  s/Master P.trole Engineering/MSc\t\tMaster en Pétrole/;
+  s/Master of Space System Engineering/MSc\t\tMaster of Space System Engineering/;
+  s/Master d\'Histoire/M\t\tMastère d\'Histoire/;
+  s/Master Hydraulique/M\t\tMastère Hydraulique/;
+  s/Master Aérospace/M\t\tMastère Aérospace/;
+  s/\tUrbanisme\t/\t\tUrbanisme\t/;
+  s/3e c\.Urbanisme/\tUrbanisme/;
+  s/Acoustique musicale/\tAcoustique musicale/;
+  s/Acoustique\t/\tAcoustique/;
+  s/Aéro\.Astro &EECS/\tAéronautique et Astronomie/;
+  s/Algorithmique/\tAlgorithmique/;
+  s/Anal\. Modél\.Syst\. Biologi\./\tAnalyse et modélisation sytématique en biologie/;
+  s/Anal\.& Polit\.Economique/\tAnalyse et politique économique/;
+  s/Analyse & Modélisation/\tAnalyse et modélisation/;
+  s/Analyse & Polit\. Econom\./\tAnalyse et politique économique/;
+  s/Analyse & Polit\.Eco\./\tAnalyse et politique économique/;
+  s/Analyse & Politique Eco\./\tAnalyse et politique économique/;
+  s/Analyse & Politique Econ\./\tAnalyse et politique économique/;
+  s/Analyse & Politique Economiques/\tAnalyse et politique économique/;
+  s/Analyse donnée/\tAnalyse de données/;
+  s/Analyse Economique/\tAnalyse économique/;
+  s/Analyse et Politique Economiques/\tAnalyse et politique économique/;
+  s/Analyse Industr\./\tAnalyse industrielle/;
+  s/Analyse Numérique/\tAnalyse numérique/;
+  s/Arabe Littéral/\tArabe littéral/;
+  s/Astrophys\./\tAstrophysique/;
+  s/Base Fond\. Oncogenèse/\tBase fondamentale de l'oncogenèse/;
+  s/Bases fondamentales Oncogénèse/\tBase fondamentale de l'oncogenèse/;
+  s/Biologie marine/\tBiologie marine/;
+  s/Biologie moléculaire et céllulaire végétale/\tBiologie moléculaire et céllulaire végétale/;
+  s/Bio. Moléculaire/\tBiologie moléculaire/;
+  s/biologie moléculaire/\tBiologie moléculaire/;
+  s/Biochimie/\tBiochimie/;
+  s/Biochimic/\tBiochimie/;
+  s/Microbiologie/\tMicrobiologie/;
+  s/Biologie/\tBiologie/;
+  s/biologie/\tBiologie/;
+  s/biomécanique/\tBiomécanique/;
+  s/Biophysique/\tBiophysique/;
+  s/Business/\tBusiness/;
+  s/Cancérologie/\tCancérologie/;
+  s/CEA/\tCEA/;
+  s/Champs Particules Matières/\tChamps particules matières/;
+  s/Champs Particules Matière/\tChamps particules matières/;
+  s/Chemical Engineering/\tChemical engineering/;
+  s/Chem.Eng./\tChemical engineering/;
+  s/\tChimie\t/\t\tChimie\t/;
+  s/Chimie appliquée/\tChimie appliquée/;
+  s/Chimie moléculaire/\tChimie moléculaire/;
+  s/\tChimie Moléculaire/\t\tChimie moléculaire/;
+  s/Multinational Chimie Moléculaire/\tChimie moléculaire/;
+  s/Chimie Organique/\t\tChimie organique/;
+  s/Chimie Organique Ing./\tChimie organique/;
+  s/Computer Sc\.Dipl\./\tComputer science/;
+  s/Computer Sciences/\tComputer science/;
+  s/Cryptographe\/Algorighmie/\tCryptographe et algorithmique/;
+  s/algorithmique/\tAlgorithmique/;
+  s/Astro\., Géophysique & Techn\. Spatiales/\tAstronomie, géophysique et technologies spatiales/;
+  s/Astrophysique/\tAstrophysique/;
+  s/Automatique/\tAutomatique/;
+  s/Ecologie/\tÉcologie/;
+  s/Master Histoire/M\t\tHistoire/;
+  s/Affaires Internationales/\tAffaires internationales/;
+  s/Aménagement & Urbanisme/\tAménagement et urbanisme/;
+  s/Chinois/\tChinois/;
+  s/cryptographie/\tCryptographie/;
+  s/d'Histoire/\tHistoire/;
+  s/Dépollution des Sols/\tDépollution des sols/;
+  s/dével. culturel et dir. projet/\tDéveloppement culturel et direction de projets/;
+  s/DIC/\tDIC/;
+  s/Virologie/\tVirologie/;
+  s/Virologie Moléculaire/\tVirologie moléculaire/;
+  s/Transportation/\tTransportation/;
+  s/Transports/\tTransports/;
+  s/Transport\t/\tTransport/;
+  s/Trait. Signal/\tTrait\. Signal/;
+  s/Toxicologie/\tToxicologie/;
+  s/Théorie Information/\tThéorie Information/;
+  s/Théologie Catholique/\tThéologie Catholique/;
+  s/Théologie cath./\tThéologie cath\./;
+  s/Théologie\t/\tThéologie\t/;
+  s/Théolog\./\tThéolog\./;
+  s/Télécom\. Numériques/\tTélécom\. Numériques/;
+  s/Technologie Management/\tTechnologie Management/;
+  s/Techno\.Policy Dipl\./\tTechno\.Policy Dipl\./;
+  s/Technique agricole/\tTechnique agricole/;
+  s/Syst\. énergétiques/\tSyst\. énergétiques/;
+  s/Strat\. des Org\./\tStrat\. des Org\./;
+  s/Strat\. & Marketing/\tStrat\. & Marketing/;
+  s/Statistiques/\tStatistiques/;
+  s/Statistique et modèles aléatoires écon\. et finance/\tStatistique et modèles aléatoires écon\. et finance/;
+  s/Statist\./\tStatist\./;
+  s/Stat\.& Santé/\tStat\.& Santé/;
+  s/\tSt\.//;
+  s/spécialisé sécurité des syst\. inform\./\tspécialisé sécurité des syst\. inform\./;
+  s/Solides Structures & Syst\. Mécaniques/\tSolides Structures & Syst\. Mécaniques/;
+  s/Sociologie/\tSociologie/;
+  s/Signal et Communications Londres/\tSignal et Communications Londres/;
+  s/Sciences théoriques/\tSciences théoriques/;
+  s/Sciences Physiques/\tSciences Physiques/;
+  s/Sciences des Sols/\tSciences des Sols/;
+  s/Sciences Cognitives/\tSciences Cognitives/;
+  s/Sciences & Techniques  environnement/\tSciences & Techniques  environnement/;
+  s/Science Dipl\./\tScience/;
+  s/Science\t/\tSciences/;
+  s/Sciences\t/\tSciences/;
+  s/Sc\.Phys\. Théorique/\tPhysique théorique/;
+  s/Sc\.Phys\.\t/\tPhysique/;
+  s/Sc\.Natur\./\tSciences naturelles/;
+  s/Sc\.Microbio\./\tMicrobiologie/;
+  s/Sc\.Math\. Appliquées/\tMathématiques appliquées/;
+  s/Sc\.Math\.\t/\tMathématiques\t/;
+  s/Sc\.Info\.Géographique/\tInformatique géographique/;
+  s/Sc\.Hum\./\tScience humaine/;
+  s/Sc\.Gestion/\tGestion/;
+  s/Macroéconomie/\tMacroéconomie/;
+  s/Math\. Appliquées aux Sc\. Eco\./\tÉconomie/;
+  s/Sc.Econom./\tÉconomie/;
+  s/Sc\.Econ\. Finance/\tÉconomie et finance/;
+  s/Sc\.Econ\.\t/\tÉconomie\t/;
+  s/Sc\.Eco\.Internat\./\tÉconomie/;
+  s/Sc\.Eco\./\tÉconomie/;
+  s/Sc\.Eco\t/\tÉconomie\t/;
+  s/Sc\.du Bois/\tScience du bois/;
+  s/Sc\.des Matériaux/\tSciences des matériaux/;
+  s/Sc\.de la Vie/\tSciences de la vie/;
+  s/Sc\.de l'Organisation/\tScience de l'organisation/;
+  s/Sc\.de l'Eau 1994/\tScience de l'eau/;
+  s/Sc\.de l'Eau\t/\tScience de l'eau\t/;
+  s/Sc.Cognitives/\tSciences cognitives/;
+  s/Sc\.Chim\./\tChimie/;
+  s/Sc\.Appl\./\tScience appliquées/;
+  s/Sc\. Physiques Option Chimie/\tPhysique, chimie/;
+  s/Sc\. Phy\./\tPhysique/;
+  s/Sc\. Micro/\t/;
+  s/Sc\. matériaux/\tSciences des matériaux/;
+  s/Sc\. la Vie/\tSciences de la vie/;
+  s/Sc\. Informatique\/Micro-électronique/\tInformatique, micro-électronique/;
+  s/Sc\. Immunologie/\tImmunologie/;
+  s/Sc\. Histor\. et Philolog\./\tHistoire et philologie/;
+  s/Sc\. forestières/\tSciences forestières/;
+  s/Sc\. et Tech\. Environ\./\tTechnique environnementale/;
+  s/Sc\. Eco/\tÉconomie/;
+  s/Sc\. Cognitives/\tSciences cognitives/;
+  s/Sc\. biomédicales/\tSciences biomédicales/;
+  s/Sc\. Bactériologie/\tBactériologie/;
+  s/Sc\. & Génie Matériaux/\tGénie des matériaux/;
+  s/Sc\. & Génie des Matériaux/\tGénie des matériaux/;
+  s/Management Sc\./\tManagement des sciences/;
+  s/Sc\.\t/\tSciences\t/;
+  s/Sc Géodésie/\tGéodésie/;
+  s/Robotique/\tRobotique/;
+  s/retr\.Aérospatiale/\tAérospatiale/;
+  s/Réseaux/\tRéseaux/;
+  s/Rech\.Opérationnelle/\tRecherche opérationnelle/;
+  s/Rech\.Opér\./\tRecherche opérationnelle/;
+  s/Public Policy/\tPublic Policy/;
+  s/Psychopathologie/\tPsychopathologie/;
+  s/psychologie/\tPsychologie/;
+  s/Programmation/\tProgrammation/;
+  s/Processus stochastiques/\tProcessus stochastiques/;
+  s/Processus Stochastiques/\tProcessus stochastiques/;
+  s/Génie Procédés/\tGénie des procédés/;
+  s/Génie des Procédés/\tGénie des procédés/;
+  s/\tProcédés/\t\tProcédés/;
+  s/Probalilité & Finance/\tProbalilité & Finance/;
+  s/Probabilités Finance/\tProbabilités Finance/;
+  s/Probabilités et Applications/\tProbabilités et Applications/;
+  s/Probabilités\t/\tProbabilités\t/;
+  s/Physique, chimie, biotransformation/\tPhysique, chimie, biotransformation/;
+  s/Physique Théorique/\tPhysique théorique/;
+  s/Physique Solides/\tPhysique des solides/;
+  s/Physique Quantique/\tPhysique quantique/;
+  s/Physique nucléaire/\tPhysique nucléaire/;
+  s/Physique Nucléaire/\tPhysique nucléaire/;
+  s/Phys\.Nucléaire/\tPhysique nucléaire/;
+  s/Physique expérimentale/\tPhysique expérimentale/;
+  s/Physique du solide/\tPhysique des solides/;
+  s/Physique des Solides/\tPhysique des solides/;
+  s/Physique des Lasers/\tPhysique des lasers/;
+  s/Physique Chimie des matériaux/\tPhysique et chimie des matériaux/;
+  s/Physique\t/\tPhysique\t/;
+  s/Phys\.Théor\. Dipl\./\tPhysique théorique/;
+  s/Phys\.Théor\./\tPhysique théorique/;
+  s/Phys\.Réact\./\tPhysique des réacteurs/;
+  s/Phys\.Quantique/\tPhysique quantique/;
+  s/Phys\.Plasmas Spatiaux/\tPhysique des plasmas spatiaux/;
+  s/Phys\.Mathématiques/\tPhysiques mathématiques/;
+  s/Phys\.des Solides/\tPhysique des solides/;
+  s/Phys\. Théor\./\tPhysique théorique/;
+  s/Phys\. Réacteurs/\tPhysique des réacteurs/;
+  s/Phys\. Quantique/\tPhysique quantique/;
+  s/Géodynamique & Phys\./\tGéodynamique & physique/;
+  s/Phys\.Solid/\t\tPhysique des solides/;
+  s/Phys\./\tPhysique/;
+  s/Phys des Solides/\tPhysique des solides/;
+  s/philosophie et théologie/\tPhilosophie et théologie/;
+  s/Philosophie/\tPhilosophie/;
+  s/Philo\.et Eco\. Londres/\tPhilosophie et économie/;
+  s/Pharmacochimie Mol\.expérim\.et Métabolisme/\tPharmacochimie moléculaire expérimentales et métabolisme/;
+  s/Pharmaco\.& Biol\.Cellulaire/\tPharmacologie et biologie cellulaire/;
+  s/Pharmacolog\./\tPharmacologie/;
+  s/Particules & Matière/\tParticules et matières/;
+  s/Organisation et Pilotage Syst\. Product\. Indust\./\tOrganisation et pilotage syst. Product. Indust./;
+  s/Organisation & Syst\.Prod\./\tOrganisation et système de production/;
+  s/Russe/\tRusse/;
+  s/Polit\.Eco\.& Soc\./\tPolitique économique et sociale/;
+  s/Physique des Particules CNRS-CERN/\tPhysique des Particules CNRS-CERN/;
+  s/Physique M/\tPhysique moléculaire/;
+  s/Org\. Production et Entreprise/\tOrganisation production et entreprise/;
+  s/Org\. et Pilotage des Syst\. product\./\tOrganisation et pilotage des systèmes production/;
+  s/\tOptique/\t\tOptique/;
+  s/Océanographie/\tOcéanographie/;
+  s/océanologie/\tOcéanographie/;
+  s/Océano\./\tOcéanographie/;
+  s/Nucl\. Eng/\tNuclear engineering/;
+  s/Neurosciences/\tNeurosciences/;
+  s/Neuro/\tNeurosciences/;
+  s/Multinational Chimie molécullaire/\tChimie molécullaire/;
+  s/Multinational\t//;
+  s/Morphol\.Math\./\tMorphologie mathématiques/;
+  s/Modélisation Stochastique et Statistique/\tModélisation stochastique et statistique/;
+  s/Modèl\.Stochastiq\./\tModélisation stochastique/;
+  s/Milieux Coralliens/\tMilieux coralliens/;
+  s/Microélect\./\tMicroélectronique/;
+  s/Microéconomie/\tMicroéconomie/;
+  s/méthodes physiques télédétection/\tMéthodes physiques télédétection/;
+  s/Météorologie/\tMétéorologie/;
+  s/Médiateur Judiciaire et conventionnelle/\tMédiateur judiciaire et conventionnelle/;
+  s/Mechanical Engineering/\tMechanical Engineering/;
+  s/Mécanique\/Sc\. Matériaux/\tMécanique science des matériaux/;
+  s/Mécanique Théorique/\tMécanique théorique/;
+  s/Mécanique Fluides/\tMécanique fluides/;
+  s/Mécanique\t/\tMécanique\t/;
+  s/Méca Fluid\.Théor\./\tMécanique des fluides théoriques/;
+  s/Méc\.des Fluides/\tMécanique des fluides/;
+  s/Maths Financières/\tMathématiques financières/;
+  s/Maths Appl\.à l'Economie/\tMathématiques appliquées à l'économie/;
+  s/Mathématiques/\tMathématiques/;
+  s/Mathématique/\tMathématiques/;
+  s/Mathematics/\tMathématiques/;
+  s/Maths\t/\tMathématiques\t/;
+  s/Math\.Appliquées/\tMathématiques appliquées/;
+  s/Math\.Appliq\./\tMathématiques appliquées/;
+  s/Math\.Appl\./\tMathématiques appliquées/;
+  s/Math\. Stat\./\tMathématiques statistiques/;
+  s/Math\. Pures/\tMathématiques pures/;
+  s/Math\. Appliqués/\tMathématiques appliquées/;
+  s/Math\. Appliquées et Calcul Scient\./\tMathématiques appliquées et calcul scientifique/;
+  s/Math\. Appliquées/\tMathématiques appliquées/;
+  s/Math\. appli\. Sci\. homme/\tMathématiques appliquées aux sciences humaines/;
+  s/Informatique Math\.& Appl\./\tInformatique et mathématiques appliquées/;
+  s/\tinformatique\t/\t\tInformatique\t/;
+  s/Informatique Math\. et Appli\./\tInformatique et mathématiques appliquées/;
+  s/Math\./\tMathématiques/;
+  s/Nepali-Tibétain/\tNepali-Tibétain/;
+  s/MVA/\tMathématiques vision apprentissage/;
+  s/MMME//;
+  s/OJME//;
+  s/\tMicro\t/\t\tMicro\t/;
+  s/Médec\.AIHP/\Médecine/;
+  s/\tMarketing\t/\t\tMarketing\t/;
+  s/Lt\. Et\. Sup\. Banq\./\tLt. Et. Sup. Banq./;
+  s/Management Aéroportuaire/\tManagement Aéroportuaire/;
+  s/Logistique/\tLogistique/;
+  s/Lettres modernes/\tLettres modernes/;
+  s/Lettres Hist\. Art/\tLettres histoire de l'art/;
+  s/lettres classiques/\tLettres classiques/;
+  s/Lettres Anglais/\tLettres Anglais/;
+  s/Lettres\t/\tLettres\t/;
+  s/LCO//;
+  s/Laser & Matière/\tLaser & Matière/;
+  s/Langues Orientales/\tLangues orientales/;
+  s/Langues Orient\./\tLangues orientales/;
+  s/Intelligence Artificielle/\tIntelligence artificielle/;
+  s/Ingenierie & Gestion/\tIngenierie & gestion/;
+  s/Informatique Fondamentale/\tInformatique fondamentale/;
+  s/Informatique Dipl\./\tInformatique/;
+  s/Informatique  Grenoble/\tInformatique/;
+  s/\tInformatique\t/\t\tInformatique\t/;
+  s/Information theory/\tInformation theory/;
+  s/Industrial Design Eng\./\tIndustrial Design Engineering/;
+  s/Immunologie/\tImmunologie/;
+  s/Immunology/\tImmunologie/;
+  s/Images Synthèse/\tImages synthèse/;
+  s/hydrologie-hydrogéologie/\thydrologie-hydrogéologie/;
+  s/Hydrologie/\tHydrologie/;
+  s/Hydrogéologie/\tHydrogéologie/;
+  s/Hydrodynamique/\tHydrodynamique/;
+  s/Histoire, Anglais, Lettres classiques & modernes/\tHistoire, Anglais, Lettres classiques & modernes/;
+  s/Histoire Droit/\tHistoire Droit/;
+  s/\tHistoire\t/\t\tHistoire\t/;
+  s/Hist\.de l'Art/\tHistoire l'art/;
+  s/HIST PHILOSOPHIE/\tHistoire et philosophie/;
+  s/HH GG/\tHistoire et géographie/;
+  s/Gestion scientifique/\tGestion scientifique/;
+  s/Gestion des Ress\. Naturelles Renouvelables/\tGestion des ressources naturelles renouvelables/;
+  s/\tGestion\t/\t\tGestion\t/;
+  s/Géophys\./\tGéophysique/;
+  s/Géographie/\tGéographie/;
+  s/Génie Electrique/\tGénie électrique/;
+  s/Génie Chimique/\tGénie chimique/;
+  s/Génie Atomique/\tGénie atomique/;
+  s/\tGénie\t/\t\tGénie\t/;
+  s/Génie civil/\tGénie civil/;
+  s/Génétique/\tGénétique/;
+  s/Finance Monnaie/\tFinance Monnaie/;
+  s/Finance Marché/\tFinance Marché/;
+  s/Finance et probabilité/\tFinance et probabilité/;
+  s/Finance et Monnaie/\tFinance et Monnaie/;
+  s/Finance Dipl\./\tFinance/;
+  s/Finance and Economics Londres/\tFinance and Economics/;
+  s/\tFinance\t/\t\tFinance\t/;
+  s/Expert Compt\./\tExpertise comptable/;
+  s/Etudes Latines/\tEtudes latines/;
+  s/études extrême orientales/\tÉtudes extrême orientales/;
+  s/et PhD\t//;
+  s/et HDR\t//;
+  s/Epidémiologie/\tÉpidémiologie/;
+  s/Environnement Marin/\tEnvironnement marin/;
+  s/\tEnvironnement\t/\t\tEnvironnement\t/;
+  s/Energétique/\tÉnergétique/;
+  s/Electronique/\tÉlectronique/;
+  s/Electron\./\tÉlectronique/;
+  s/Electrical Engineering/\tElectrical Engineering/;
+  s/Electrical Engin\. & Computer/\tElectrical engineering & Computer science/;
+  s/Electrical Eng Dipl\./\tElectrical engineering/;
+  s/Educateur spécialisé/\tÉducateur spécialisé/;
+  s/Économiee\t/\tÉconomie\t/;
+  s/Economie Monétaire & Bancaire/\tÉconomie monétaire & bancaire/;
+  s/Economie Internationale/\tÉconomie internationale/;
+  s/Economie innovation/\tÉconomie innovation/;
+  s/Economie Industrielle/\tÉconomie industrielle/;
+  s/Economie Ind\./\tÉconomie industrielle/;
+  s/Economie et Finance/\tÉconomie et fnance/;
+  s/Economie Environnement/\tÉconomie environnementale/;
+  s/Economie Envir\. et Ress\. Nat\./\tÉconomie environnementale et ressources naturelles/;
+  s/Economie du Dévelop\./\tÉconomie du développement/;
+  s/Economie Dipl\./\tÉconomie/;
+  s/Economie Développement/\tÉconomie développement/;
+  s/Economie des Institutions/\tÉconomie des institutions/;
+  s/Economie & Finance Internat./\tÉconomie & finance internationale/;
+  s/Economie\t/\tÉconomie\t/;
+  s/Econométrie/\tÉconométrie/;
+  s/Econom\.Dipl\./\tÉconométrie/;
+  s/Econ\.Po\./\tÉconomie politique/;
+  s/Econ\.Industrielle/\tÉconomie industrielle/;
+  s/Econ\.Appliquée/\tÉconomie appliquée/;
+  s/Econ\.& Finance Internat\./\tÉconomie & finance internationale/;
+  s/Econ\. & Finance/\tÉconomie & finance/;
+  s/Econ\.\t/\tÉconomie\t/;
+  s/écologie M/\tÉcologie/;
+  s/Eco\.Rech\.Dévelop\./\tÉconomie recherche et développement/;
+  s/Eco\.Appliquée/\tÉconomie appliquée/;
+  s/Eco\. Enviro\. & Ress\. Humaines/\tÉconomie environnementale & ressource humaines/;
+  s/Eco Finance Internationale/\tÉconomie finance internationale/;
+  s/Droit Public/\tDroit Public/;
+  s/Droit des affaires/\tDroit des affaires/;
+  s/Droit\t/\tDroit\t/;
+  s/INRIA/\tINRIA/;
+  s/\tInformatique\t/\t\tInformatique\t/;
+  s/Ecotoxicologie/\tEcotoxicologie/;
+  s/Droit public/\tDroit public/;
+  s/Droit des Affaires/\tDroit des Affaires/;
+  s/Anal\.Numér\./\tAnalyse numérique/;
+  s/& Gestion Energie/\tGestion de l'énergie/;
+  s/droit/\tdroit/;
+
+  # On nettoye à la fin
+  s/\tSE\t/\t/;
+  s/rer\.Nat\.//;
+  s/Un\. Dipl\.\t//;
+  s/Dipl\. Dipl\./Dipl./;
+  s/Dipl\.Dipl\./Dipl./;
+  s/Ing Dipl\./Ing./;
+  s/Ing Ing\./Ing./;
+  s/Sc\.Dipl\.//;
+  s/\t2005\t//;
+  s/(Dipl\.)(\tDipl\.)+/Dipl./;
+  s/(Ing\.)(\tDipl\.)+/Ing./;
+  s/(Corps)(\tDipl\.)+/Corps/;
+  s/(MSc)(\tDipl\.)+/MSc/;
+  s/(PhD)(\tDipl\.)+/PhD/;
+  s/(DEA)(\tDipl\.)+/DEA/;
+  s/(ME)(\tDipl\.)+/ME/;
+  s/(MBA)(\tDipl\.)+/MBA/;
+  s/(MPA)(\tDipl\.)+/MPA/;
+  s/(Lic\.)(\tDipl\.)+/Lic./;
+  s/(MIA)(\tDipl\.)+/MIA/;
+  s/(Agr\.)(\tDipl\.)+/Agr./;
+  s/(CAPES)(\tDipl\.)+/CAPES/;
+  s/(DESS)(\tDipl\.)+/DESS/;
+  s/(BTS)(\tDipl\.)+/BTS/;
+  s/(MA)(\tDipl\.)+/MA/;
+  s/(Maîtr\.)(\tDipl\.)+/Maîtr./;
+  s/(HDR)(\tDipl\.)+/HDR/;
+  s/(DEUG)(\tDipl\.)+/DEUG/;
+  s/(MEE)(\tDipl\.)+/MEE/;
+  s/(MPhil)(\tDipl\.)+/MPhil/;
+  s/(MUP)(\tDipl\.)+/MUP/;
+  s/(MME)(\tDipl\.)+/MME/;
+  s/(MCP)(\tDipl\.)+/MCP/;
+  s/(BA)(\tDipl\.)+/BA/;
+  s/(MEl)(\tDipl\.)+/MEl/;
+  s/(MM)(\tDipl\.)+/MM/;
+  s/(MIB)(\tDipl\.)+/MIB/;
+  s/(MC)(\tDipl\.)+/MC/;
+  s/(MEM)(\tDipl\.)+/MEM/;
+  s/(MEng)(\tDipl\.)+/MEng/;
+  s/(MCE)(\tDipl\.)+/MCE/;
+  s/(M)(\tDipl\.)+/M/;
+  s/(MMS)(\tDipl\.)+/MMS/;
+  s/(MB)(\tDipl\.)+/MB/;
+  s/(MiF)(\tDipl\.)+/MiF/;
+  s/Ing\.\tPhD/Ing.\t\t/;
+  s/PhD\tPhD/PhD\t\t/;
+  s/MSc\tMSc/MSc/;
+  s/DEA\tMSc/DEA/;
+  s/DEA\tMSc/DEA/;
+  s/DEA\tMSc/DEA/;
+  s/PhD\tMSc/PhD/;
+  s/Dipl\.\tME/ME/;
+  s/MBA\tMBA/MBA/;
+  s/DEA\tM\t/DEA\t/;
+  s/PhD\tM\t/PhD\t/;
+  s/MSc\tMBA/MBA/;
+  s/PhD\tHDR/PhD/;
+  s/(Ing\.\t)+(Ing\.)/Ing./;
+  s/PhD\tIng/PhD/;
+  s/PhD\tIng\./PhD/;
+  s/MBA\tIng\./MBA/;
+  s/MBA\tMA/MBA/;
+  s/PhD\./PhD/;
+  s/Dipl\.\tIng\./Ing./;
+  s/MSc\tIng\./MSc/;
+  s/MIB\tIng\./MIB/;
+
+  s/Université//g;
+  s/université//g;
+  s/Univers\.//g;
+  s/Sc\.\t//g;
+  s/Sc\. \t//g;
+  s/Paul-Sabatier/Université Paul-Sabatier/;
+  s/de Provence/Université de Provence/;
+  s/Jean-Moulin/Université Jean-Moulin/;
+  s/Claude Bernard/Université Claude Bernard/;
+  s/de Rennes/Université de Rennes 1/;
+  s/MIT Institute of Technology/MIT/;
+  s/London Royaume uni//;
+  s/\tLondon\t//;
+  s/\tGrenoble\t//;
+  s/ENS UlmAE/ENSAE/;
+
+  s/\t  /\t/g;
+  s/\t /\t/g;
+  s/\t,/\t/g;
+  s/\t-/\t/g;
+  s/\t:/\t/g;
+  s/\t\./\t/g;
+  s/\t  /\t/g;
+  s/\t /\t/g;
+  s/  \t/\t/g;
+  s/ \t/\t/g;
+  s/London\tBusiness School/London Business School/;
+  s/DEA\tMSc/DEA/;
+  s/ME\tDipl\./ME/;
+  s/\tENS\t/\tENS Ulm/;
+  s/Économiee environ\. et ressources naturelles UCL Londres/UCL\tÉconomie environnementale et ressources naturelles/;
+  s/Dipl\.\tHEC 04//;
+  s/Neurosciencessciences/Neurosciences/;
+  s/HEC\tHEC-Entrepreneurs//;
+  s/Master Techniques Avancées en Calcul des Structures\tENS Cachan/Master Techniques Avancées en Calcul des Structures/;
+  s/DEA\t\tPanthéon-Sorbonne/DEA\tPanthéon-Sorbonne/;
+  s/MBA\t\tCollege of Europe/MBA\tCollege of Europe/;
+  s/DEA\t\tUMPC/DEA\tUMPC/;
+  s/Informatique UMPC/Informatique/;
+
+  print OUT $_;
+}
+
+close(FILE);
+close(OUT);
index 505f87b..fb3a6db 100755 (executable)
@@ -19,8 +19,12 @@ echo int
 $MYSQL x4dat < Activites.sql
 $MYSQL x4dat < Adresses.sql
 $MYSQL x4dat < Anciens.sql
 $MYSQL x4dat < Activites.sql
 $MYSQL x4dat < Adresses.sql
 $MYSQL x4dat < Anciens.sql
-$MYSQL x4dat < Formations.sql
 $MYSQL x4dat < Entreprises.sql
 $MYSQL x4dat < Entreprises.sql
+./formation.pl
+cat Formations_out.txt > Formations.txt
+rm -f Formations_out.txt
+$MYSQL x4dat < Formations.sql
+
 
 # nettoyage
 echo nettoyage
 
 # nettoyage
 echo nettoyage
index f0a490b..67e9cf5 100644 (file)
 <li><a href="fusionax/import">Import de la base AX</a> {if $lastimport} - (dernier import le {$lastimport}){/if}</li> 
 <li>Mise en <a href="fusionax/ids">correspondance simple</a></li>
 <li>Création des <a href="fusionax/view">VIEW annexes nécessaires aux corrélations</a></li>
 <li><a href="fusionax/import">Import de la base AX</a> {if $lastimport} - (dernier import le {$lastimport}){/if}</li> 
 <li>Mise en <a href="fusionax/ids">correspondance simple</a></li>
 <li>Création des <a href="fusionax/view">VIEW annexes nécessaires aux corrélations</a></li>
+<li>Corrélation des <a href="fusionax/deceased">dates de décès</a></li>
+<li>Corrélation des <a href="fusionax/promo">promotions</a></li>
 <li>Corrélation des <a href="fusionax/names">données d'identification</a></li>
 <li>Corrélation des <a href="fusionax/coords">coordonnées</a></li>
 <li>Corrélation des <a href="fusionax/pros">informations professionnelles</a></li>
 <li>Corrélation des <a href="fusionax/studies">informations de formations</a></li>
 <li>Corrélation des <a href="fusionax/names">données d'identification</a></li>
 <li>Corrélation des <a href="fusionax/coords">coordonnées</a></li>
 <li>Corrélation des <a href="fusionax/pros">informations professionnelles</a></li>
 <li>Corrélation des <a href="fusionax/studies">informations de formations</a></li>
-<li>Corrélation des <a href="fusionax/deceased">dates de décès</a></li>
 </ul>
 
 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
 </ul>
 
 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
index cd362f6..206c381 100644 (file)
         {if $field2}
         <th>{$namefield2}</th>
         {/if}
         {if $field2}
         <th>{$namefield2}</th>
         {/if}
+        {if $field3}
+        <th>{$namefield3}</th>
+        {/if}
+        {if $field4}
+        <th>{$namefield4}</th>
+        {/if}
         {if $fusionAction}
         <th>Action</th>
         {/if}
         {if $fusionAction}
         <th>Action</th>
         {/if}
         {if $field2}
         <td>{$c.$field2}</td>
         {/if}
         {if $field2}
         <td>{$c.$field2}</td>
         {/if}
+        {if $field3}
+        <td>{$c.$field3}</td>
+        {/if}
+        {if $field4}
+        <td>{$c.$field4}</td>
+        {/if}
         {if $fusionAction}
         <td><a class="fusion-action" href="{$fusionAction}/{$c.user_id}/{$c.id_ancien}">{$name}</a></td>
         {/if}
         {if $fusionAction}
         <td><a class="fusion-action" href="{$fusionAction}/{$c.user_id}/{$c.id_ancien}">{$name}</a></td>
         {/if}
diff --git a/templates/fusionax/promo.tpl b/templates/fusionax/promo.tpl
new file mode 100644 (file)
index 0000000..d237fae
--- /dev/null
@@ -0,0 +1,37 @@
+{**************************************************************************}
+{*                                                                        *}
+{*  Copyright (C) 2003-2007 Polytechnique.org                             *}
+{*  http://opensource.polytechnique.org/                                  *}
+{*                                                                        *}
+{*  This program is free software; you can redistribute it and/or modify  *}
+{*  it under the terms of the GNU General Public License as published by  *}
+{*  the Free Software Foundation; either version 2 of the License, or     *}
+{*  (at your option) any later version.                                   *}
+{*                                                                        *}
+{*  This program is distributed in the hope that it will be useful,       *}
+{*  but WITHOUT ANY WARRANTY; without even the implied warranty of        *}
+{*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *}
+{*  GNU General Public License for more details.                          *}
+{*                                                                        *}
+{*  You should have received a copy of the GNU General Public License     *}
+{*  along with this program; if not, write to the Free Software           *}
+{*  Foundation, Inc.,                                                     *}
+{*  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA               *}
+{*                                                                        *}
+{**************************************************************************}
+
+<h2><a href="fusionax">Fusion des annuaires X.org - AX</a> / Promotions</h2>
+
+<p></p>
+
+{if $nbMissmatchingPromos > 0}
+<p>Il y a {$nbMissmatchingPromos} différences entre les deux bases dans pour les promotions.</p>
+<p>Grosses différences (oranjisation ?) :</p>
+{include file='fusionax/listFusion.tpl' fusionList=$missmatchingPromos1 field1='user_id' namefield1='ID X.org' field3='promo_etude_xorg'
+namefield3='etude_xorg' field4='promo_sortie_xorg' namefield4='sortie_xorg' field2='promo_etude_ax' namefield2='etude_ax'}
+
+<p>Petites différences : promo_etude_xorg == promo_etude_ax + 1 et promo_etude_xorg + 3 == promo_sortie_xorg, a priori ce sont les étrangers que nous avons mal
+inclus</p>
+{include file='fusionax/listFusion.tpl' fusionList=$missmatchingPromos2 field1='user_id' namefield1='ID X.org' field3='promo_etude_xorg'
+namefield3='etude_xorg' field4='promo_sortie_xorg' namefield4='sortie_xorg' field2='promo_etude_ax' namefield2='etude_ax'}
+{/if}
index 25d28b6..2ebcb43 100644 (file)
@@ -144,14 +144,18 @@ function chgMainWinLoc(strPage)
       {if $x.promo_sortie && ($x.promo_sortie-3 > $x.promo)}
         - X {math equation="a-b" a=$x.promo_sortie b=3}
       {/if}
       {if $x.promo_sortie && ($x.promo_sortie-3 > $x.promo)}
         - X {math equation="a-b" a=$x.promo_sortie b=3}
       {/if}
+        {if $logged && $x.is_referent}
+        [<a href="referent/{$user->login()}" class='popup2'>Ma fiche référent</a>]
+        {/if}
       {if $x.education}
       {if $x.education}
-        &nbsp;-&nbsp;Formation&nbsp;: {$x.education|smarty:nodefaults}
-      {/if}
-      {if $logged && $x.is_referent}
-      [<a href="referent/{$user->login()}" class='popup2'>Ma fiche référent</a>]
+        &nbsp;-&nbsp;Formation&nbsp;:
+        <ul>
+        {foreach from=$x.education item="edu"}
+          <li>{$edu|smarty:nodefaults}</li>
+        {/foreach}
+        </ul>
       {/if}
       {if $x.corps}
       {/if}
       {if $x.corps}
-        <br />
         {$x.corps|smarty:nodefaults}
       {/if}
     </div>
         {$x.corps|smarty:nodefaults}
       {/if}
     </div>
diff --git a/upgrade/merge-0.0.1/07_education.php b/upgrade/merge-0.0.1/07_education.php
new file mode 100755 (executable)
index 0000000..6941b14
--- /dev/null
@@ -0,0 +1,163 @@
+#!/usr/bin/php5
+<?php
+require_once 'connect.db.inc.php';
+
+$globals->debug = 0; //do not store backtraces
+
+// get degree list
+$res = XDB::iterator("SELECT  id, abbreviation AS name
+                        FROM  profile_education_degree_enum
+                    ORDER BY  id");
+foreach ($res as $item) {
+    $degree_list[$item[1]] = $item[0];
+}
+
+// get degree's level list
+$res = XDB::iterator("SELECT  id, level AS name
+                        FROM  profile_education_degree_enum
+                    ORDER BY  id");
+foreach ($res as $item) {
+    $level_list [$item[1]] = $item[0];
+}
+
+// get university list
+$res = XDB::iterator("SELECT  id, IF(abbreviation = '', name, abbreviation) AS name
+                        FROM  profile_education_enum
+                    ORDER BY  id");
+foreach ($res as $item) {
+    $university_list [$item[1]] = $item[0];
+}
+
+// get field list
+$res = XDB::iterator("SELECT  id, field AS name
+                        FROM  profile_education_field_enum
+                    ORDER BY  id");
+foreach ($res as $item) {
+    $field_list [$item[1]] = $item[0];
+}
+
+// get Xorg education data
+$res = XDB::query("SELECT  p.uid, d.abbreviation AS degree, IF(e.abbreviation = '', e.name, e.abbreviation) AS university, p.program, p.id AS no
+                     FROM  profile_education             AS p
+               INNER JOIN  profile_education_enum        AS e ON (p.eduid = e.id)
+               INNER JOIN  profile_education_degree_enum AS d ON (p.degreeid = d.id)
+                    WHERE  p.id != 100
+                 ORDER BY  p.uid");
+$xorg_edu = $res->fetchAllAssoc();
+
+// get AX education data
+$res = XDB::iterator("SELECT  u.user_id AS uid, f.Intitule_diplome AS degree, f.Intitule_formation AS university,
+                              CONCAT(Descr_formation, ' ', tmp_1, ' ', tmp_2, ' ', tmp_3, ' ', tmp_4) AS program
+                        FROM  fusionax_formations   AS f
+                  INNER JOIN  fusionax_xorg_anciens AS u ON (f.id_ancien = u.matricule_ax)
+                    ORDER BY  u.user_id");
+$ax_edu = $res->fetchAllAssoc();
+
+// merge education data
+$nb_merge_succes = 0;
+$nb_total = 0;
+$xorg = next($xorg_edu);
+while ($ax = next($ax_edu)) {
+    array_walk($ax, 'trim');
+    if (($ax['degree'] == '') && ($ax['university'] = '')) {
+        continue;
+    }
+    while ($xorg['uid'] && ($xorg['uid'] < $ax['uid'])) {
+        $xorg = next($xorg_edu);
+    }
+
+    $no = 0;
+    if($xorg['uid'] == $ax['uid']) {
+        $uid = $xorg['uid'];
+        $i = 0;
+
+        while (($xorg['uid'] == $uid) && (!merge($ax, $xorg))) {
+            $xorg = next($xorg_edu);
+            $i++;
+            $no++;
+        }
+        while ($xorg['uid'] == $uid) {
+            $xorg = next($xorg_edu);
+            $no++;
+        }
+
+        if ($i > 0) {
+            $i = $no;
+        } else {
+            $i = $no - 1;
+        }
+        while ($i != 0) {
+            $xorg = prev($xorg_edu);
+            $i--;
+        }
+        if ($ax['no']) {
+            $no = $ax['no'];
+            $nb_merge_succes++;
+        }
+    }
+    adapt_ax($ax);
+    XDB::execute("REPLACE INTO  profile_education (uid, degreeid, eduid, program, fieldid, id)
+                        VALUES  {?}, {?}, {?}, {?}, {?}, {?}",
+                 $ax['uid'], $ax['degree'], $ax['university'], $ax['program'], $ax['field'], $no);
+    $nb_total++;
+    if (($nb_total % 1000) == 0) {
+        echo ".";
+    }
+}
+
+echo "\n";
+echo "$nb_merge_succes educations were succesfully merged among $nb_total entries.\n";
+
+// auxilliary functions
+
+// replaces AX data by corresponding id in Xorg database
+function adapt_ax(&$ax)
+{
+    if ($field_list[$ax['program']]) {
+        $ax['field'] = $field_list[$ax['program']];
+        $ax['program'] = null;
+    }
+    $ax['degree'] = $degree_list[$ax['degree']];
+    $ax['university'] = $university_list[$ax['university']];
+}
+
+// tries to merge two educations into ax and returns 1 in case of merge
+function merge(&$ax, $xorg)
+{
+    if ($ax['degree'] == '') {
+        if ($ax['university'] != $xorg['university']) {
+            return 0;
+        }
+        $ax['degree'] = $xorg['degree'];
+        $ax['university'] = $xorg['university'];
+    } else {
+        if ($ax['university'] == '') {
+            if (($level_list[$ax['degree']] == $level_list[$xorg['degree']]) || ($xorg['degree'] == "Dipl.") || ($ax['degree'] == "Dipl.")) {
+                if ($xorg['degree'] != "Dipl.") {
+                    $ax['degree'] = $xorg['degree'];
+                }
+                $ax['university'] = $xorg['university'];
+            } else {
+                return 0;
+            }
+        } else {
+            if (($ax['university'] == $xorg['university']) &&
+                (($level_list[$ax['degree']] == $level_list[$xorg['degree']]) || ($xorg['degree'] == "Dipl.") || ($ax['degree'] == "Dipl."))) {
+                if ($xorg['degree'] != "Dipl.") {
+                    $ax['degree'] = $xorg['degree'];
+                }
+            } else {
+                return 0;
+            }
+        }
+    }
+    if ($xorg['program']) {
+        $ax['field'] = $field_list[$ax['program']];
+        $ax['program'] = $xorg['program'];
+    }
+    $ax['no'] = $xorg['no'];
+    return 1;
+}
+
+/* vim:set et sw=4 sts=4 ts=4: */
+?>
index 16982fa..42d3ac6 100644 (file)
@@ -8,8 +8,11 @@ CREATE TABLE IF NOT EXISTS profile_education_field_enum (
 CREATE TABLE IF NOT EXISTS profile_education_degree_enum (
   id INT(2) NOT NULL AUTO_INCREMENT,
   degree VARCHAR(255) DEFAULT NULL,
 CREATE TABLE IF NOT EXISTS profile_education_degree_enum (
   id INT(2) NOT NULL AUTO_INCREMENT,
   degree VARCHAR(255) DEFAULT NULL,
+  abbreviation VARCHAR(255) DEFAULT '' NOT NULL,
+  level TINYINT (1) UNSIGNED DEFAULT 0 NOT NULL,
   PRIMARY KEY(id),
   PRIMARY KEY(id),
-  UNIQUE KEY(degree)
+  UNIQUE KEY(degree),
+  UNIQUE KEY(abbreviation)
 ) CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS profile_education_degree (
 ) CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS profile_education_degree (
@@ -21,10 +24,12 @@ CREATE TABLE IF NOT EXISTS profile_education_degree (
 CREATE TABLE IF NOT EXISTS profile_education_enum (
   id INT(4) NOT NULL AUTO_INCREMENT,
   name VARCHAR(255) DEFAULT NULL,
 CREATE TABLE IF NOT EXISTS profile_education_enum (
   id INT(4) NOT NULL AUTO_INCREMENT,
   name VARCHAR(255) DEFAULT NULL,
+  abbreviation VARCHAR(255) DEFAULT '' NOT NULL,
   url VARCHAR(255) DEFAULT NULL,
   country CHAR(2) NOT NULL DEFAULT 'FR',
   PRIMARY KEY(id),
   url VARCHAR(255) DEFAULT NULL,
   country CHAR(2) NOT NULL DEFAULT 'FR',
   PRIMARY KEY(id),
-  UNIQUE KEY(name)
+  UNIQUE KEY(name),
+  UNIQUE KEY(IF(abbreviation = '', name, abbreviation))
 ) CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS profile_education (
 ) CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS profile_education (
@@ -33,8 +38,10 @@ CREATE TABLE IF NOT EXISTS profile_education (
   eduid INT(4) NOT NULL DEFAULT 0,
   degreeid INT(4) NOT NULL DEFAULT 0,
   fieldid INT(2) NOT NULL DEFAULT 0,
   eduid INT(4) NOT NULL DEFAULT 0,
   degreeid INT(4) NOT NULL DEFAULT 0,
   fieldid INT(2) NOT NULL DEFAULT 0,
+  entry_year INT(4) DEFAULT NULL,
   grad_year INT(4) DEFAULT NULL,
   program VARCHAR(255) DEFAULT NULL,
   grad_year INT(4) DEFAULT NULL,
   program VARCHAR(255) DEFAULT NULL,
+  flags SET('primary') DEFAULT '' NOT NULL,
   PRIMARY KEY(id, uid)
 ) CHARSET=utf8;
 
   PRIMARY KEY(id, uid)
 ) CHARSET=utf8;
 
diff --git a/upgrade/newdirectory-0.0.1/09_education.sql b/upgrade/newdirectory-0.0.1/09_education.sql
new file mode 100644 (file)
index 0000000..74de743
--- /dev/null
@@ -0,0 +1,550 @@
+-- Updates diplomas
+UPDATE profile_education_degree_enum SET abbreviation = 'PhD', degree = 'Doctorat', level = 8 WHERE degree = 'PhD';
+UPDATE profile_education_degree_enum SET abbreviation = 'Lic.', level = 3 WHERE degree = 'Licence';
+UPDATE profile_education_degree_enum SET abbreviation = 'MSc', degree = 'Master of Science', level = 5 WHERE degree = 'MS';
+UPDATE profile_education_degree_enum SET abbreviation = 'DEA', degree = "Diplôme d'Études Approfondies", level = 5 WHERE degree = 'DEA';
+UPDATE profile_education_degree_enum SET abbreviation = 'ME', degree = 'Master of Economics', level = 5 WHERE degree = 'ME';
+UPDATE profile_education_degree_enum SET abbreviation = 'MBA', degree = 'Master of Business Administration', level = 5 WHERE degree = 'MBA';
+UPDATE profile_education_degree_enum SET abbreviation = 'MiF', degree = 'Master in Finance', level = 5 WHERE degree = 'MiF';
+UPDATE profile_education_degree_enum SET abbreviation = 'MPA', degree = 'Master of Public Administration', level = 5 WHERE degree = 'MPA';
+UPDATE profile_education_degree_enum SET abbreviation = 'MIA', degree = 'Master of International Affairs', level = 5 WHERE degree = 'MIA';
+UPDATE profile_education_degree_enum SET abbreviation = 'Corps', degree = 'Corps', level = 5 WHERE degree = 'Corps';
+UPDATE profile_education_degree_enum SET abbreviation = 'Ing.', degree = 'Ingénieur', level = 5 WHERE degree = 'Ingénieur';
+UPDATE profile_education_degree_enum SET abbreviation = 'Dipl.', degree = 'Diplôme', level = 0 WHERE degree = 'Diplôme';
+
+INSERT INTO  profile_education_degree_enum (abbreviation, degree, level)
+     VALUES  ('Agr.', 'Agrégation', 4), ('CAPES', 'Certificat d\'Aptitude au Professorat de l\'Enseignement du Second degré', 4),
+             ('DESS', 'Diplôme d\'Études Supérieures Spécialisées', 5), ('BTS', 'Brevet de Technicien Supérieur', 2), ('MA', 'Master of Arts', 5),
+             ('Maîtr.', 'Maîtrise', 4), ('HDR', 'Habilitation à Diriger des Recherches', 8), ('DEUG', 'Diplôme d\'Études Universitaires Générales', 2),
+             ('MEE', 'Master of Electrical Engineering', 5), ('MPhil', 'Master of Philosophy', 5), ('MUP', 'Master of Urban Planning', 5),
+             ('MME', 'Master of Mechanical Engineering', 5), ('MCP', 'Master of City Planning', 5), ('BA', 'Bachelor of Arts', 3),
+             ('MEl', 'Master of Electronics', 5), ('MM', 'Master of Management', 5), ('MIB', 'Master of International Business', 5),
+             ('MC', 'Master of Chemistry', 5), ('MEM', 'Master of Engineering in Manufacturing', 5), ('MEng', 'Master of Engineering', 5),
+             ('MCE', 'Master of Chemical Engineering', 5), ('M', 'Master', 5), ('MMS', 'Master of Military Studies', 5),
+             ('MSI', 'Master of Science in Information', 5),
+             ('DESCF', 'Diplôme d\'Études Supérieures Comptables et Financières', 5), ('MB', 'Master of Biotechnology', 5);
+
+-- Updates universities
+UPDATE profile_education_enum
+SET abbreviation = 'Télécom', name = 'Télécom ParisTech', url = 'http://www.telecom-paristech.fr/'
+WHERE name = 'Télécom';
+UPDATE profile_education_enum
+SET abbreviation = 'ENGREF', name = 'École Nationale du Génie Rural des Eaux et des Forêts', url = 'http://www.agroparistech.fr/-Ecole-interne-ENGREF-.html'
+WHERE name = 'ENGREF';
+UPDATE profile_education_enum
+SET abbreviation = 'INSEE', name = 'Institut National de la Statistique et des Études Économiques'
+WHERE name = 'INSEE';
+UPDATE profile_education_enum
+SET abbreviation = 'Météo', name = 'École Nationale de la Météorologie'
+WHERE name = 'Météo';
+UPDATE profile_education_enum
+SET abbreviation = 'Mines', name = 'Mines ParisTech'
+WHERE name = 'Mines';
+UPDATE profile_education_enum
+SET abbreviation = 'Ponts', name = 'École des Ponts ParisTech'
+WHERE name = 'Ponts';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSAE', name = 'École Nationale de la Statistique et de l\'Administration Économique ParisTech'
+WHERE name = 'ENSAE';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSAM', name = 'Arts et Métiers ParisTech'
+WHERE name = 'ENSAM';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSEEIHT', name = 'École Nationale Supérieure d\'Électrotechnique, d\'Électronique, d\'Informatique, d\'Hydraulique et des Télécommunications'
+WHERE name = 'ENSEEIHT';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSIMAG', name = 'École Nationale Supérieure d\'Informatique et de Mathématiques Appliquées de Grenoble', url = 'http://ensimag.grenoble-inp.fr/'
+WHERE name = 'ENSIMAG';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSTA', name = 'École Nationale Supérieure de Techniques Avancées'
+WHERE name = 'ENSTA';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSPM', name = 'École Nationale Supérieure du Pétrole et des Moteurs'
+WHERE name = 'ENSPM';
+UPDATE profile_education_enum
+SET abbreviation = 'INAPG', name = 'Institut National Agronomique Paris-Grignon', url = 'http://www.agroparistech.fr/'
+WHERE name = 'INAPG';
+UPDATE profile_education_enum
+SET abbreviation = 'HEC', name = 'École des Hautes Études Commerciales'
+WHERE name = 'HEC';
+UPDATE profile_education_enum
+SET abbreviation = 'X', name = 'École polytechnique', url = 'http://www.polytechnique.edu/'
+WHERE name = 'X';
+UPDATE profile_education_enum
+SET abbreviation = 'SUPAERO', name = 'École Nationale Supérieure de l\'Aéronautique et de l\'Espace', url = 'http://www.isae.fr/'
+WHERE name = 'Supaéro';
+UPDATE profile_education_enum
+SET abbreviation = 'SupOptique', name = 'Institut d\'Optique Théorique et Appliquée'
+WHERE name = 'Supoptique';
+UPDATE profile_education_enum
+SET abbreviation = 'Supélec', name = 'École Supérieure d\'Électricité'
+WHERE name = 'Supélec';
+UPDATE profile_education_enum
+SET abbreviation = 'ENA', name = 'École Nationale d\'Administration'
+WHERE name = 'ENA';
+UPDATE profile_education_enum
+SET abbreviation = 'INSEAD', name = 'Institut Européen d\'Administration des Affaires', url = 'http://www.insead.edu/'
+WHERE name = 'INSEAD';
+UPDATE profile_education_enum
+SET abbreviation = 'Chimie Paris', name = 'Chimie Paris ParisTech', url = 'http://www.enscp.fr/'
+WHERE name = 'Chimie Paris';
+UPDATE profile_education_enum
+SET abbreviation = 'INSTN', name = 'Institut National des Sciences et Techniques Nucléaires'
+WHERE name = 'INSTN';
+UPDATE profile_education_enum
+SET abbreviation = 'UMPC', name = 'Université Pierre-et-Marie-Curie (Paris-VI)', url = 'http://www.upmc.fr/'
+WHERE name = 'Univ Paris  6 (Pierre et Marie Curie - Jussieu)';
+UPDATE profile_education_enum
+SET abbreviation = 'Paris-Sud', name = 'Université Paris-Sud (Paris-XI)'
+WHERE name = 'Univ Paris 11 (Orsay)';
+UPDATE profile_education_enum
+SET abbreviation = 'Paris-Diderot', name = 'Université Denis Diderot (Paris-VII)', url = 'http://www.univ-paris7.fr/'
+WHERE name = 'Univ Paris  7 (Denis Diderot - Jussieu)';
+UPDATE profile_education_enum
+SET abbreviation = 'Dauphine', name = 'Université de Technologie en Sciences des Organisations et de la Décision de Paris-Dauphine (Paris-IX)'
+WHERE name = 'Univ Paris  9 (Dauphine)';
+UPDATE profile_education_enum
+SET abbreviation = 'Panthéon-Sorbonne', name = 'Université Panthéon-Sorbonne (Paris-I)'
+WHERE name = 'Univ Paris  1 (Panthéon-Sorbonne)';
+UPDATE profile_education_enum
+SET abbreviation = 'Nanterre', name = 'Université de Paris Ouest - Nanterre La Défense (Paris-X)'
+WHERE name = 'Univ Paris 10 (Nanterre)';
+UPDATE profile_education_enum
+SET abbreviation = 'Paris-Descartes', name = 'Université Paris Descartes (Paris-V)'
+WHERE name = 'Univ Paris  5 (René Descartes)';
+UPDATE profile_education_enum
+SET abbreviation = 'Sorbonne Nouvelle', name = 'Université Sorbonne Nouvelle (Paris-III)'
+WHERE name = 'Univ Paris  3 (Sorbonne Nouvelle)';
+UPDATE profile_education_enum
+SET abbreviation = 'Vincennes-Saint-Denis', name = 'Université de Vincennes à Saint-Denis (Paris-VIII)'
+WHERE name = 'Univ Paris  8 (Vincennes - Saint Denis)';
+UPDATE profile_education_enum
+SET abbreviation = 'Paris-Val de Marne', name = 'Université Paris-Val de Marne (Paris-XII)'
+WHERE name = 'Univ Paris 12 (Val de Marne)';
+UPDATE profile_education_enum
+SET abbreviation = 'Paris-Nord', name = 'Université Paris-Nord (Paris-XIII)'
+WHERE name = 'Univ Paris 13 (Nord)';
+UPDATE profile_education_enum
+SET abbreviation = 'Paris-Sorbonne', name = 'Université Paris-Sorbonne (Paris-IV)'
+WHERE name = 'Univ Paris  4 (Sorbonne)';
+UPDATE profile_education_enum
+SET abbreviation = 'Assas', name = 'Université Panthéon-Assas (Paris-II)'
+WHERE name = 'Univ Paris  2 (Panthéon - Assas)';
+UPDATE profile_education_enum
+SET abbreviation = 'CDI', name = 'Collège des Ingénieurs'
+WHERE name = 'Collège des Ingénieurs';
+UPDATE profile_education_enum
+SET abbreviation = 'ENS Ulm', name = 'École Normale Supérieure'
+WHERE name = 'ENS Ulm';
+UPDATE profile_education_enum
+SET abbreviation = 'ENS Lyon', name = 'École Normale Supérieure de Lyon '
+WHERE name = 'ENS Lyon';
+UPDATE profile_education_enum
+SET abbreviation = 'ENS Cachan', name = 'École Normale Supérieure de Cachan'
+WHERE name = 'ENS Cachan';
+UPDATE profile_education_enum
+SET abbreviation = 'ESPCI', name = 'ESPCI ParisTech'
+WHERE name = 'ESPCI';
+UPDATE profile_education_enum
+SET abbreviation = 'Sciences Po', name = 'Institut d\'Études Politiques de Paris'
+WHERE name = 'IEP Paris';
+UPDATE profile_education_enum
+SET abbreviation = 'EHESS', name = 'École des Hautes Études en Sciences Sociales'
+WHERE name = 'EHESS';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSIC', name = 'École Nationale Supérieure des Industries Chimiques'
+WHERE name = 'ENSIC';
+UPDATE profile_education_enum
+SET abbreviation = 'Grenoble INP', name = 'Institut Polytechnique de Grenoble', url = 'http://www.grenoble-inp.fr/'
+WHERE name = 'INPG';
+UPDATE profile_education_enum
+SET abbreviation = 'ESSEC', name = 'École Supérieure des Sciences Économiques et Commerciales'
+WHERE name = 'ESSEC';
+UPDATE profile_education_enum
+SET abbreviation = 'INPL', name = 'Institut National Polytechnique de Lorraine'
+WHERE name = 'INPL';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSAPB', name = 'École Nationale Supérieure d\'Architecture de Paris-Belleville'
+WHERE name = 'EAPB (Ecole Architecture Paris Belleville)';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSAPLV', name = 'École Nationale Supérieure d\'Architecture de Paris-La Villette'
+WHERE name = 'EAPLV (Ecole Architecture Paris La Villette)';
+UPDATE profile_education_enum
+SET abbreviation = 'EAVT', name = 'École d\'Architecture de la Ville et des Territoires à Marne-la-Vallée'
+WHERE name = 'EAVT (Ecole d\'architecture de Marne La Vallee)';
+UPDATE profile_education_enum
+SET abbreviation = 'ENSP', name = 'École Nationale Supérieure du Paysage'
+WHERE name = 'ENSP Versailles';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'École Nationale Supérieure du Génie Maritime', url = 'http://www.ensta.fr/'
+WHERE name = 'Génie maritime (Ecole nationale supérieur du)';
+UPDATE profile_education_enum
+SET abbreviation = 'CPA de Paris', name = 'Centre de Perfectionnement aux Affaires de Paris', url = ''
+WHERE name = 'Centre de Perfectionnement aux Affaires';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'ESCP-EAP', url = 'http://www.escp-eap.eu/'
+WHERE name = 'ESCP-EAP';
+UPDATE profile_education_enum
+SET abbreviation = 'CEPE', name = 'Centre d\'Études des Programmes Économiques'
+WHERE name = 'CEPE';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Institut des Actuaires', url = 'http://www.institutdesactuaires.com/'
+WHERE name = 'Institut des actuaires';
+UPDATE profile_education_enum
+SET abbreviation = 'CEIPI', name = 'Centre d\'Études Internationales de la Propriété Industrielle'
+WHERE name = 'CEIPI';
+UPDATE profile_education_enum
+SET abbreviation = 'Université Paul-Sabatier', name = 'Université Paul-Sabatier (Toulouse III)'
+WHERE name = 'Univ Toulouse III (Paul Sabatier)';
+UPDATE profile_education_enum
+SET abbreviation = 'Université de Provence', name = 'Université de Provence (Aix-Marseille I)'
+WHERE name = 'Université de Provence';
+UPDATE profile_education_enum
+SET abbreviation = 'INSA Rouen', name = 'Institut National des Sciences Appliquées de Rouen'
+WHERE name = 'INSA Rouen';
+UPDATE profile_education_enum
+SET abbreviation = 'IAE de Paris', name = 'Institut d\'Administration des Entreprises de Paris', url = 'http://iae.univ-paris1.fr/'
+WHERE name = 'Institut d\'Administration des Entreprises';
+
+UPDATE profile_education_enum
+SET abbreviation = 'Berkeley', name = 'University of California, Berkeley', country = 'US'
+WHERE name = 'Univ Berkeley';
+UPDATE profile_education_enum
+SET abbreviation = 'CalTech', name = 'California Institute of Technology', country = 'US'
+WHERE name = 'CalTech';
+UPDATE profile_education_enum
+SET abbreviation = 'MIT', name = 'Massachusetts Institute of Technology', country = 'US'
+WHERE name = 'Massachusetts Institute of Technology';
+UPDATE profile_education_enum
+SET abbreviation = 'Cornell', name = 'Cornell University', country = 'US'
+WHERE name = 'Univ Cornell';
+UPDATE profile_education_enum
+SET abbreviation = 'Stanford', name = 'Stanford University', country = 'US'
+WHERE name = 'Univ Stanford';
+UPDATE profile_education_enum
+SET abbreviation = 'UCLA', name = 'University of California, Los Angeles', country = 'US'
+WHERE name = 'Univ UCLA';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'University of Illinois', country = 'US'
+WHERE name = 'Univ Illinois';
+UPDATE profile_education_enum
+SET abbreviation = 'Michigan', name = 'University of Michigan, Ann Arbor', country = 'US'
+WHERE name = 'Univ Michigan';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Seattle University', country = 'US'
+WHERE name = 'Univ Seattle';
+UPDATE profile_education_enum
+SET abbreviation = 'UGA', name = 'University of Georgia', country = 'US'
+WHERE name = 'Univ Georgia';
+UPDATE profile_education_enum
+SET abbreviation = 'UT Austin', name = 'University of Texas at Austin', country = 'US'
+WHERE name = 'Univ Texas';
+UPDATE profile_education_enum
+SET abbreviation = 'RIP', name = 'Rensselaer Polytechnic Institute', country = 'US'
+WHERE name = 'Univ Rensselaer';
+UPDATE profile_education_enum
+SET abbreviation = 'NYU', name = 'New York University', country = 'US'
+WHERE name = 'Univ New York';
+UPDATE profile_education_enum
+SET abbreviation = 'Harvard', name = 'Harvard University', country = 'US'
+WHERE name = 'Univ Harvard';
+UPDATE profile_education_enum
+SET abbreviation = 'The Wharton School', name = 'The Wharton School of the University of Pennsylvania', country = 'US', url = 'http://www.wharton.upenn.edu/'
+WHERE name = 'Univ Wharton';
+UPDATE profile_education_enum
+SET abbreviation = 'Columbia University', name = 'Columbia University in the City of New York', country = 'US'
+WHERE name = 'Univ Columbia';
+UPDATE profile_education_enum
+SET abbreviation = 'WSBS', name = 'Watson School of Biological Sciences', country = 'US'
+WHERE name = 'Watson School of Biological Sciences';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Colorado School of Mines', country = 'US'
+WHERE name = 'Univ Colorado School of Mines';
+UPDATE profile_education_enum
+SET abbreviation = 'Princeton', name = 'Princeton University', country = 'US'
+WHERE name = 'Univ Princeton';
+UPDATE profile_education_enum
+SET abbreviation = 'Georgia Tech', name = 'Georgia Institute of Technology', country = 'US'
+WHERE name = 'GeorgiaTech';
+UPDATE profile_education_enum
+SET abbreviation = 'JHU', name = 'Johns Hopkins University', country = 'US'
+WHERE name = 'Univ Johns Hopkins';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'University of Chicago', country = 'US'
+WHERE name = 'Univ Chicago';
+UPDATE profile_education_enum
+SET abbreviation = 'Yale', name = 'Yale University', country = 'US'
+WHERE name = 'Univ Yale';
+UPDATE profile_education_enum
+SET abbreviation = 'TAMU', name = 'Texas A&M University', country = 'US'
+WHERE name = 'Texas A&M University';
+UPDATE profile_education_enum
+SET abbreviation = 'UCSB', name = 'University of California, Santa Barbara', country = 'US'
+WHERE name = 'Univ Santa-Barbara';
+UPDATE profile_education_enum
+SET abbreviation = 'Kellogg', name = 'Kellogg School of Management', country = 'US'
+WHERE name = 'Kellogg School of Management';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'University of Iowa', country = 'US'
+WHERE name = 'Univ Iowa';
+UPDATE profile_education_enum
+SET abbreviation = 'UW-Madison', name = 'University of Wisconsin-Madison', country = 'US', url = 'http://www.wisc.edu/'
+WHERE name = 'Univ Wisconsin-Madison';
+UPDATE profile_education_enum
+SET abbreviation = 'UCSD', name = 'University of California, San Diego', country = 'US'
+WHERE name = 'Univ San Diego';
+UPDATE profile_education_enum
+SET abbreviation = 'NU', name = 'Northwestern University', country = 'US'
+WHERE name = 'Univ Northwestern';
+UPDATE profile_education_enum
+SET abbreviation = 'CU', name = 'University of Colorado at Boulder', country = 'US'
+WHERE name = 'Univ Colorado at Boulder';
+UPDATE profile_education_enum
+SET abbreviation = 'CMU', name = 'Carnegie Mellon University', country = 'US'
+WHERE name = 'Univ Carnegie Mellon';
+UPDATE profile_education_enum
+SET abbreviation = 'Carolina', name = 'University of North Carolina at Chapel Hill', country = 'US'
+WHERE name = 'Univ of North Carolina at Chapel Hill';
+
+UPDATE profile_education_enum
+SET abbreviation = 'TU Berlin', name = 'Technische Universität Berlin', country = 'DE'
+WHERE name = 'Univ TU Berlin';
+UPDATE profile_education_enum
+SET abbreviation = 'TU Darmstadt', name = 'Technische Universität Darmstadt', country = 'DE'
+WHERE name = 'Univ TU Darmstadt';
+UPDATE profile_education_enum
+SET abbreviation = 'TU München', name = 'Technische Universität München', country = 'DE'
+WHERE name = 'Univ TU München';
+UPDATE profile_education_enum
+SET abbreviation = 'Universität Karlsruhe', name = 'Universität Karlsruhe (TH)', country = 'DE'
+WHERE name = 'Univ Karlsruhe';
+UPDATE profile_education_enum
+SET abbreviation = 'RWTH', name = 'RWTH Aachen University', country = 'DE'
+WHERE name = 'Univ RWTH-Aachen';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Universität Stuttgart', country = 'DE'
+WHERE name = 'Univ Stuttgart';
+
+UPDATE profile_education_enum
+SET abbreviation = 'EPM', name = 'École Polytechnique de Montréal', country = 'CA'
+WHERE name = 'EP Montréal';
+UPDATE profile_education_enum
+SET abbreviation = 'UBC', name = 'University of British Columbia', country = 'CA'
+WHERE name = 'Univ British Columbia';
+UPDATE profile_education_enum
+SET abbreviation = 'McGill', name = 'McGill University', country = 'CA'
+WHERE name = 'Univ McGill';
+UPDATE profile_education_enum
+SET abbreviation = 'UQÀM', name = 'Université du Québec à Montréal', country = 'CA' WHERE id = 125;
+
+UPDATE profile_education_enum
+SET abbreviation = 'UPC', name = 'Universitat Politècnica de Catalunya', country = 'ES'
+WHERE name = 'Univ Catalunya';
+UPDATE profile_education_enum
+SET abbreviation = 'UPM', name = 'Universidad Politècnica de Madrid', country = 'ES'
+WHERE name = 'Univ Madrid';
+UPDATE profile_education_enum
+SET abbreviation = 'UPF', name = 'Universitat Pompeu Fabra', country = 'ES'
+WHERE name = 'Univ Pompeu Fabra';
+
+UPDATE profile_education_enum
+SET abbreviation = 'Chalmers', name = 'Chalmers Tekniska Högskola', country = 'SE'
+WHERE name = 'Univ Chalmers';
+UPDATE profile_education_enum
+SET abbreviation = 'KTH', name = 'Kungliga Tekniska Högskolan', country = 'SE'
+WHERE name = 'Univ KTH';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Stockholms Universitet', country = 'SE'
+WHERE name = 'Univ Stockholm';
+
+UPDATE profile_education_enum
+SET abbreviation = 'TU Delft', name = 'Technische Universiteit Delft', country = 'NL'
+WHERE name = 'Univ TU Delft';
+UPDATE profile_education_enum
+SET abbreviation = 'RSM', name = 'Rotterdam School of Management, Erasmus University', country = 'NL'
+WHERE name = 'RSM';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Universiteit Leiden', country = 'NL'
+WHERE name = 'Univ Leiden';
+
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Kyoto University', country = 'JP'
+WHERE name = 'Univ Kyoto';
+UPDATE profile_education_enum
+SET abbreviation = 'Todai', name = 'University of Tokyo', country = 'JP'
+WHERE name = 'Univ Tokyo';
+UPDATE profile_education_enum
+SET abbreviation = 'Tokyo Tech', name = 'Tokyo Institute of Technology', country = 'JP'
+WHERE name = 'Tokyo Institute of Technology';
+
+UPDATE profile_education_enum
+SET abbreviation = 'UNIL', name = 'Université de Lausanne', country = 'CH'
+WHERE name = 'Univ Lausanne';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Universität Zürich', country = 'CH'
+WHERE name = 'Univ Zürich';
+UPDATE profile_education_enum
+SET abbreviation = 'EPFL', name = 'École Polytechnique Fédérale de Lausanne', country = 'CH'
+WHERE name = 'EP Fédérale Lausanne';
+UPDATE profile_education_enum
+SET abbreviation = 'IMD', name = 'International Institute for Management Development', country = 'CH'
+WHERE name = 'Institute for Management Development';
+UPDATE profile_education_enum
+SET abbreviation = 'ETH Zürich', name = 'Eidgenössische Technische Hochschule Zürich', country = 'CH'
+WHERE name = 'ETH Zürich';
+
+UPDATE profile_education_enum
+SET abbreviation = 'UNIMI', name = 'Università degli Studi di Milano', country = 'IT'
+WHERE name = 'Univ Milano';
+UPDATE profile_education_enum
+SET abbreviation = 'UNITO', name = 'Università degli Studi di Torino', country = 'IT'
+WHERE name = 'Univ Torino';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Politecnico di Milano', country = 'IT'
+WHERE name = 'Politecnico di Milano';
+UPDATE profile_education_enum
+SET abbreviation = 'EUI', name = 'European University Institute', country = 'IT'
+WHERE name = 'Institut Universitaire Européen';
+UPDATE profile_education_enum
+SET abbreviation = 'Università Bocconi', name = 'Università Commerciale Luigi Bocconi', url = 'http://www.unibocconi.it/', country = 'IT'
+WHERE name = 'Université Bocconi';
+
+UPDATE profile_education_enum
+SET abbreviation = 'MGU', name = 'Lomonosov Moscow State University', country = 'RU'
+WHERE name = 'Univ Moscow (lomonosov)';
+UPDATE profile_education_enum
+SET abbreviation = 'Bauman MSTU', name = 'Bauman Moscow State Technical University', country = 'RU', url = 'http://www.bmstu.ru/'
+WHERE name = 'Univ Moscow (Bauman)';
+
+UPDATE profile_education_enum
+SET abbreviation = 'Technion', name = 'Israel Institute of Technology', country = 'IL'
+WHERE name = 'Univ Technion';
+
+UPDATE profile_education_enum
+SET abbreviation = 'Oxford', name = 'University of Oxford', country = 'GB'
+WHERE name = 'Univ Oxford';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'London Business School', country = 'GB'
+WHERE name = 'London Business School';
+UPDATE profile_education_enum
+SET abbreviation = 'LSE', name = 'The London School of Economics and Political Science', country = 'GB'
+WHERE name = 'London School of Economics';
+UPDATE profile_education_enum
+SET abbreviation = 'Cambridge', name = 'University of Cambridge', country = 'GB'
+WHERE name = 'Univ Cambridge';
+UPDATE profile_education_enum
+SET abbreviation = 'Imperial College', name = 'Imperial College London', country = 'GB', url = 'http://www3.imperial.ac.uk/'
+WHERE name = 'Imperial College';
+UPDATE profile_education_enum
+SET abbreviation = 'Henley', name = 'Henley Management College', country = 'GB', url = 'http://www.henley.reading.ac.uk/'
+WHERE name = 'Henley Management College';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'University of Southampton', country = 'GB', url = 'http://www.soton.ac.uk/'
+WHERE name = 'Univ Southampton';
+UPDATE profile_education_enum
+SET abbreviation = '', name = 'Cardiff University', country = 'GB'
+WHERE name = 'Univ Cardiff';
+
+UPDATE profile_education_enum
+SET abbreviation = 'UNSW', name = 'The University of New South Wales', country = 'AU'
+WHERE name = 'Univ New South Wales  (Sydney Australia)';
+
+UPDATE profile_education_enum
+SET abbreviation = 'THU', name = 'Tsinghua University', country = 'CN'
+WHERE name = 'Univ Tsinghua';
+
+UPDATE profile_education_enum
+SET abbreviation = 'NUS', name = 'National University of Singapore', country = 'SG'
+WHERE name = 'National University of Singapore';
+
+UPDATE profile_education_enum
+SET abbreviation = 'NTNU', name = 'Norwegian University of Science and Technology', country = 'NO', url = 'http://www.ntnu.no/'
+WHERE name = 'Univ Trondheim';
+
+-- Cleans duplicated entries
+UPDATE profile_education SET eduid = 0 WHERE eduid = 70;
+DELETE FROM profile_education_enum WHERE id = 70;
+DELETE FROM profile_education_degree WHERE eduid = 70;
+
+UPDATE profile_education SET eduid = 91 WHERE eduid = 106;
+DELETE FROM profile_education_enum WHERE id = 106;
+DELETE FROM profile_education_degree WHERE eduid = 106;
+
+-- Adds new universities needed for the AX directory
+INSERT INTO  profile_education_enum (name, url, country, abbreviation)
+     VALUES  ('Institut Supérieur de l\'Aéronautique et de l\'Espace', 'http://www.isae.fr/', 'FR', 'ISAE'),
+             ('Institut des Hautes Études de Défense Nationale', 'http://www.ihedn.fr/', 'FR', 'IHEDN'),
+             ('École du Personnel Navigant d\'Essais et de Réception',
+              'http://www.defense.gouv.fr/dga/archives/l_epner_ecole_du_personnel_navigant_d_essais_et_de_reception', 'FR', 'EPNER'),
+             ('Agrocampus Ouest', 'http://www.agrocampus-ouest.fr/', 'FR', 'ENSAR'),
+             ('Montpellier SupAgro', 'http://www.supagro.fr/', 'fr', ''),
+             ('Institut Supérieur des Matériaux et de la Construction Mécanique Saint-Ouen', 'http://www.cefi.org/BOUCHON/BS/ISMCM_Saint-Ouen.htm',
+              'FR', 'ISMCM Saint-Ouen'),
+             ('École Centrale d\'Électronique ', 'http://www.ece.fr/', 'FR', 'ECE'),
+             ('École Nationale de l\'Aviation Civile', 'http://www.enac.fr/', 'FR', 'ENAC'),
+             ('Centre des Hautes Études de la Construction', 'http://www.chec.fr/', 'FR', 'CHEC'),
+             ('École de l\'Air', 'http://www.ecole-air.air.defense.gouv.fr/index.php?option=com_content&task=view&id=203&Itemid=251', 'FR', ''),
+             ('Institut Supérieur des Affaires', '', 'FR', 'ISA'),
+             ('École Supérieure de Gestion de Paris', 'http://www.esg.fr/', 'FR', 'ESG Paris'),
+             ('Institut des Hautes Études Européennes', 'http://www-ihee.u-strasbg.fr/', 'FR', 'IHEE'),
+             ('École Nationale de la Magistrature', 'http://www.enm.justice.fr/', 'FR', 'ENM'),
+             ('Institut de Formation Supérieure BioMédicale', 'http://www.igr.fr/ifsbm/', 'FR', 'IFSBM'),
+             ('Institut Supérieur de l\'AgroAlimentaire', 'http://www.isaa.fr/', 'FR', 'ISAA'),
+             ('École des Mines d\'Alès', 'http://www.ema.fr/', 'FR', 'EMA'),
+             ('Syracuse University', 'http://www.syr.edu/', 'US', 'SU'),
+             ('Dartmouth College', 'http://www.dartmouth.edu/', 'US', ''),
+             ('International Teachers Programme', 'http://www.itp-schools.org/', '', 'ITP'),
+             ('University of Kentucky', 'http://www.uky.edu/', 'US', 'UK'),
+             ('Marine Corps University', 'http://www.mcu.usmc.mil/', 'US', 'MCU'),
+             ('Chartered Institute of Management Accountants', 'http://www.cimaglobal.com/', 'GB', 'CIMA'),
+             ('University College London', 'http://www.ucl.ac.uk/', 'GB', 'UCL'),
+             ('Chartered Financial Analyst Institute', 'http://www.cfainstitute.org/', 'US', 'CFA Institute'),
+             ('Naval Postgraduate School', 'http://www.nps.edu/', 'US', 'NPS'),
+             ('Royal College of Art', 'http://www.rca.ac.uk/', 'GB', 'RCA'),
+             ('Uniwersytet Gdański', 'http://www.univ.gda.pl/', 'PL', ''),
+             ('College of Europe', 'http://www.coleurope.eu/', '', ''),
+             ('Purdue University', 'http://www.purdue.edu/', 'US', ''),
+             ('Queen\'s University', 'http://www.queensu.ca/', 'CA', 'Queen\'s'),
+             ('Université de Bretagne Occidentale', 'http://www.univ-brest.fr/', 'FR', 'UBO'),
+             ('University of California, Davis', 'http://www.ucdavis.edu/', 'US', 'UC Davis'),
+             ('Universität Stuttgarti', 'http://www.uni-stuttgart.de/', 'DE', ''),
+             ('Universitatea Politehnica din Bucureşti', 'http://www.pub.ro/', 'RO', 'Politehnica din Bucureşti'),
+             ('University of Birmingham', 'http://www.bham.ac.uk/', 'GB', ''),
+             ('University of Pennsylvania', 'http://www.upenn.edu/', 'US', ''),
+             ('University of Rome', '', 'IT', ''),
+             ('University of Sheffield', 'http://www.shef.ac.uk/', 'GB', ''),
+             ('University of Utah', 'http://www.utah.edu/', 'US', ''),
+             ('University of Washington', 'http://www.washington.edu/', 'US', ''),
+             ('Urbana University', 'http://www.urbana.edu/', 'US', ''),
+             ('Université de Technologie de Compiègne', 'http://www.utc.fr/', 'FR', 'UTC'),
+             ('Virginia Polytechnic Institute and State University', 'http://www.vt.edu/', 'US', 'Virginia Tech'),
+             ('Université Claude Bernard (Lyon I)', 'http://www.univ-lyon1.fr/', 'FR', 'Université Claude Bernard'),
+             ('Cleveland State University', 'http://www.csuohio.edu/', 'US', 'CSU'),
+             ('Centre de Perfectionnement aux Affaires du Nord', '', 'FR', 'CPA du Nord'),
+             ('Centre de Perfectionnement aux Affaires de Lyon', '', '', 'CPA de Lyon'),
+             ('Amherst College', 'http://www.amherst.edu/', 'US', '')
+             ('Ottawa University', 'http://www.ottawa.edu/', 'US', 'OU'),
+             ('Indiana University', 'http://www.indiana.edu/', 'US', ''),
+             ('University of Notre Dame du Lac', 'http://www.nd.edu/', 'US', 'Notre Dame'),
+             ('University of Maryland, College Park ', 'http://www.umd.edu/', 'US', 'UMCP'),
+             ('Vanderbilt University', 'http://www.vanderbilt.edu/', 'US', ''),
+             ('Institut National Polytechnique de Toulouse', 'http://www.inp-toulouse.fr/', 'FR', 'INP Toulouse'),
+             ('University of Houston', 'http://www.uh.edu/', 'US', 'UH'),
+             ('École Spéciale des Travaux Publics, du Bâtiment et de l\'Industrie', 'http://www.estp.fr/', 'FR', 'ESTP'),
+             ('Université Jean-Moulin (Lyon-III)', 'http://www.univ-lyon3.fr/', 'FR', 'Université Jean-Moulin'),
+             ('École Nationale Supérieure d\'Ingénieurs Électriciens de Grenoble', 'http://ense3.grenoble-inp.fr/', 'FR', 'ENSIEG'),
+             ('École Nationale Supérieure d\'Hydraulique et de Mécanique de Grenoble', 'http://ense3.grenoble-inp.fr/', 'FR', 'ENSHMG'),
+             ('Université de Rennes 1', 'http://www.univ-rennes1.fr/', 'FR', ''),
+             ('École Centrale Paris', 'http://www.ecp.fr/', 'FR', 'Centrale Paris'),
+             ('University of Dallas', 'http://www.udallas.edu/', 'US', ''),
+             ('Pontifical Catholic University of Chile', 'http://www.uc.cl/', 'CL', 'PUC'),
+             ('Universitat Oberta de Catalunya', 'http://www.uoc.edu/web/eng/', 'ES', 'UOC'),
+             ('University of California, Irvine', 'http://www.uci.edu/', 'US', 'UCI'),
+             ('Association Francophone de Management de Projet', 'http://www.afitep.fr/', 'FR', 'AFITEP'),
+             ('Centre Européen d\'Éducation Permanente', 'http://www.cedep.fr/', 'FR', 'CEDEP'),
+             ('Collège Interarmées de Défense', 'http://www.college.interarmees.defense.gouv.fr/', 'FR', ''),
+             ('Centre de Formation des Journalistes', 'http://www.cfpj.com/', 'FR', 'CFJ'),
+             ('Institut National des Hautes Études de Sécurité', 'http://www.inhes.interieur.gouv.fr/', 'FR', 'INHES');
+
+# vim:set syntax=mysql:
+
index 2e66895..c3035a7 100644 (file)
@@ -19,7 +19,7 @@
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
-ini_set('include_path', dirname(__FILE__).'/../../include:' . dirname(__FILE__).'/../../classes:/usr/share/php');
+ini_set('include_path', dirname(__FILE__).'/../../include:' . dirname(__FILE__).'/../../core/classes:/usr/share/php');
 
 require_once 'xorg.inc.php';
 require_once 'xdb.php';
 
 require_once 'xorg.inc.php';
 require_once 'xdb.php';