add ldapsaisie config files

This commit is contained in:
Benjamin Dauvergne 2014-11-26 17:42:28 +01:00
parent a8370f5e23
commit 542dea5d77
12 changed files with 3312 additions and 0 deletions

32
Makefile Normal file
View File

@ -0,0 +1,32 @@
NAME=slapd-supann
VERSION=`git describe | tr - . | cut -c2-`
FULLNAME=$(NAME)-$(VERSION)
all:
install:
uninstall:
dist-bzip2:
rm -rf build dist
mkdir -p build/$(FULLNAME) sdist
for i in *; do \
if [ "$$i" != "build" ]; then \
cp -R "$$i" build/$(NAME)-$(VERSION); \
fi; \
done
cd build && tar cfj ../sdist/$(FULLNAME).tar.bz2 .
rm -rf build
clean:
rm -rf sdist build
version:
@(echo $(VERSION))
name:
@(echo $(NAME))
fullname:
@(echo $(FULLNAME))

View File

@ -0,0 +1,840 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
/*
***************************************************
* Données de configuration pour le support SUPANN *
***************************************************
*/
// Domaine de l'établissement pour les edupPersonPrincipalName
define('LS_SUPANN_EPPN_DOMAIN', 'sorbine.fr');
// Nom de l'attribut LDAP nom
define('LS_SUPANN_LASTNAME_ATTR','sn');
// Nom de l'attribut LDAP prenom
define('LS_SUPANN_FIRSTNAME_ATTR','givenName');
// Type de LSobject correspondant aux entites SUPANN
define('LS_SUPANN_LSOBJECT_ENTITE_TYPE','LSsupannEntite');
// Format d'affichage du nom courts d'une entites SUPANN
define('LS_SUPANN_LSOBJECT_ENTITE_FORMAT_SHORTNAME','%{ou}');
// DN de l'entite SUPANN correspondant à l'etablissement
define('LS_SUPANN_ETABLISSEMENT_DN','supannCodeEntite=SORBINE,ou=structures,dc=sorbine,dc=fr');
// Type de LSobject correspondant aux entites SUPANN
// Exemple : 0753742K
define('LS_SUPANN_ETABLISSEMENT_UAI','0753742K');
// Table de données des roles generiques
$GLOBALS['supannRoleGenerique'] = array (
"D00" => "MINISTRE",
"D01" => "DIRECTEUR DU CABINET",
"D02" => "DIRECTEUR ADJOINT DU CABINET",
"D10" => "DIRECTEUR AC",
"D11" => "DELEGUE AC",
"D12" => "DELEGUE REGIONAL A LA RECH. ET TECHN.",
"D21" => "DIRECTEUR DE RECHERCHE",
"D22" => "DIRECTEUR SCIENTIFIQUE",
"D23" => "DIRECTEUR DE PROJET",
"D30" => "Directeur",
"D32" => "Directeur des études",
"D34" => "Directeur de la Recherche",
"D35" => "Doyen",
"D40" => "SOUS-DIRECTEUR",
"D60" => "DIRECTEUR DE DEPARTEMENT",
"D70" => "DOYEN DE L'IGEN",
"D71" => "DOYEN DE L'IGB",
"D80" => "DIRECTEUR GENERAL AC",
"D81" => "DIR GEN AC, SECRETAIRE GENERAL ADJOINT",
"D90" => "HAUT FONCTIONNAIRE DE DEFENSE",
"F01" => "CHEF DU CABINET",
"F02" => "CHEF ADJOINT DU CABINET",
"F10" => "CHEF DE SERVICE",
"F11" => "CHEF DE SERVICE ADJOINT AU DIRECTEUR",
"F12" => "CHEF DU SERVICE DE l'IGAENR",
"F20" => "CHEF DE MISSION",
"F21" => "CHEF DE LA MISSION",
"F22" => "CHEF DE SERVICE ADJOINT AU DIR GEN",
"F30" => "CHEF DE DIVISION",
"F40" => "CHEF DE DEPARTEMENT",
"F42" => "chef des services administratifs",
"F50" => "CHEF DE CENTRE",
"F60" => "CHEF DE BUREAU",
"F61" => "CHEF DE CELLULE",
"F62" => "CHEF DU CABINET DU SECRETAIRE GENERAL",
"F70" => "CHEF D'EXPLOITATION",
"F71" => "CHEF D'EQUIPE",
"F73" => "CHEF DU SERVICE INTERIEUR",
"F74" => "CHEF DE SECTION",
"F75" => "CHEF DE SITE",
"F76" => "CHEF DE CUISINE",
"H10" => "CHARGE DU SERVICE",
"H11" => "CHARGE DE SOUS-DIRECTION",
"H20" => "CHARGE DE MISSION AUPRES DU MINISTRE",
"H30" => "CHARGE DE MISSION AUPRES DU DIR CAB",
"H40" => "CHARGE DE MISSION",
"H70" => "CHARGE DU SECRETARIAT DU DIRECTEUR",
"H75" => "CHARGE DU SECRETERIAT DU DRRT",
"H80" => "CHARGE DE GESTION ADMINIS. ET COMPTABLE",
"J01" => "ADJOINT AU CHEF DE CABINET",
"J04" => "ADJOINT AU DIRECTEUR GENERAL AC",
"J05" => "ADJOINT AU DIRECTEUR",
"J06" => "ADJOINT AU DELEGUE AC",
"J07" => "ADJOINT AU DRRT",
"J10" => "ADJOINT AU CHEF DE SERVICE",
"J11" => "ADJOINT AU CHARGE DU SERVICE",
"J12" => "ADJOINT AU SOUS-DIRECTEUR",
"J13" => "ADJOINT AU CHARGE DE SOUS-DIRECTION",
"J20" => "ADJOINT AU CHEF DE MISSION",
"J21" => "ADJOINT AU CHEF DE LA MISSION",
"J30" => "ADJOINT AU CHEF DE DIVISION",
"J31" => "ADJOINT AU CHEF DE DEPARTEMENT",
"J32" => "ADJOINT AU DIRECTEUR DE DEPARTEMENT",
"J33" => "ADJOINT AU CHEF DE CENTRE",
"J34" => "ADJOINT AU CHEF DE BUREAU",
"J35" => "A CHEF AU CHEF DE SECTION",
"J36" => "ADJOINT AU CHEF DE CELLULE",
"J40" => "ADJOINT AU RESPONSABLE DE CELLULE",
"J41" => "ADJOINT AU RESPONSABLE DE L'UNITE",
"J42" => "ADJOINT AU RESPONSABLE DE POLE",
"J50" => "ADJOINT AU RESPONSABLE D'ATELIER",
"J60" => "Directeur adjoint",
"J61" => "Chef de service adjoint",
"J62" => "Directeur des études adjoint",
"J63" => "Directeur de la Recherche adjoint",
"J63" => "Directeur scientifique adjoint",
"M01" => "COLLABORATEUR EXTERIEUR",
"N00" => "CONSEILLER AUPRES DU MINISTRE",
"N01" => "CONSEILLER",
"N02" => "CONSEILLER DU CABINET",
"N03" => "CONSEILLER TECHNIQUE DU CABINET",
"N10" => "CONSEILLER D'ETABLISSEMENTS",
"N11" => "CONSEILLER PEDAGOGIQUE",
"N20" => "CONSEILLER TECHNIQUE",
"N50" => "COORDONNATEUR",
"P00" => "PRESIDENT",
"P01" => "PRESIDENT D'ASSOCIATION",
"P10" => "VICE-PRESIDENT",
"P50" => "SECRETAIRE GENERAL",
"P51" => "Secrétaire Général adjoint",
"P60" => "SECRETAIRE GENERAL AC",
"P70" => "Administrateur",
"P71" => "Administrateur provisoire",
"R00" => "RESPONSABLE",
"R01" => "RESPONSABLE DE CELLULE",
"R02" => "RESPONSABLE DE DEPARTEMENT",
"R10" => "RESPONSABLE DE MISSION",
"R20" => "RESPONSABLE DE POLE",
"R21" => "RESPONSABLE DE SECTEUR",
"R22" => "RESPONSABLE D'UNITE",
"R30" => "RESPONSABLE DE SERVICES TECHNIQUES",
"R31" => "RESPONSABLE EPI",
"R33" => "RESPONSABLE D'ATELIER",
"R40" => "Responsable admnistratif",
"R41" => "Responsable de diplôme",
"R42" => "Responsable pédagogique",
"R43" => "Responsable de programme",
"R80" => "RESPONSABLE UGARH",
"R81" => "ADJOINT(E) RESP UGARH",
"S01" => "Encadrant Tuteur",
"S10" => "Membre titulaire, Membre",
"S11" => "Membre suppléant",
"S12" => "Membre consultatif",
"S13" => "Participant",
"S14" => "Représentant / Représentant étudiant",
"S15" => "Délégué",
"S16" => "Correspondant",
"S17" => "Coordonnateur scientifique",
"S20" => "Partenaire",
"S21" => "Personnalité extérieure",
"T01" => "ASSISTANT DE SERVICE SOCIAL",
"T02" => "INFIRMIER",
"T12" => "AMINISTRATEUR DE DONNEES",
"T13" => "HUISSIER",
"T14" => "AGENT D'ACCUEIL",
"T15" => "HOTESSE D'ACCUEIL",
"T16" => "AGENT TECHNIQUE",
"T17" => "CHARGE DE COM, REL PUBLIQUE OU PRESSE",
"T18" => "ALLOCATAIRE D'EMPLOIS",
"T19" => "ANALYSTE",
"T22" => "ASSISTANT DE DIRECTION",
"T24" => "ASSISTANT TECHNIQUE",
"T25" => "CHARGE D'ETUDES",
"T26" => "CHEF DE PROJET",
"T27" => "CHEF DE PROJET INFORMATIQUE",
"T29" => "CONCEPTEUR REDACTEUR SITE WEB",
"T30" => "CONDUCTEUR AUTOMOBILE",
"T31" => "CONSEILLER SCIENTIFIQUE ET TECHNIQUE",
"T32" => "CONTROLEUR DE GESTION",
"T34" => "CORRESPONDANT INFORMATIQUE",
"T35" => "DEVELOPPEUR D'APPLICATIONS",
"T36" => "DOCUMENTALISTE - ARCHIVISTE",
"T37" => "GESTIONNAIRE",
"T39" => "GESTIONNAIRE DE PARC INF & TELECOM",
"T40" => "GESTIONNAIRE GRH",
"T41" => "GESTIONNAIRE DE RESTAURANT ADMINISTRATIF",
"T42" => "GESTIONNAIRE FINANCIER",
"T43" => "INFOGRAPHISTE - MAQUETTISTE (PAO)",
"T44" => "INFORMATICIEN BUREAUTIQUE",
"T45" => "INFORMATICIEN D'EXPLOITATION",
"T46" => "INFORMATICIEN SYSTEMES ET RESEAUX",
"T47" => "INGENIEUR PEDAGOGIQUE OU EN FORM PROF",
"T48" => "MECANICIEN",
"T49" => "OPERATEUR",
"T50" => "OUVRIER",
"T51" => "AGENT DE PREMIERE INTERVENTION",
"T52" => "PERSONNEL DE RESTAURATION",
"T54" => "REDACTEUR",
"T55" => "REPROGRAPHISTE",
"T56" => "RESPONSABLE PRODUCTION ET SYSTEMES",
"T57" => "SECRETAIRE",
"T58" => "SECRETAIRE PARTICULIER",
"T59" => "SECRETAIRE MEDICAL",
"T60" => "CHARGE DE MARCHES PUBLICS",
"T61" => "CHARGE DE GESTION FINANCIERE",
"T62" => "CHARGE DE PROGRAMMATION BUDGETAIRE",
"T63" => "TECHNICIEN CONSEIL HYGIENE ET SECURITE",
"T64" => "TECHNICIEN EXPLOITATION- MAINTENANCE",
"T65" => "AGENT COMPTABLE",
"T66" => "GESTIONNAIRE D'ETABLISSEMENT",
"T80" => "Maîtrise d'ouvrage des SI",
"T81" => "Maîtrise' d'œuvre des SI",
"T82" => "AQSSI",
"T83" => "RSSI",
"T84" => "CSSI (Correspondant/Chargé de SSI)",
"X00" => "MEDIATEUR",
"X01" => "MEDECIN",
"X10" => "EXPERT PEDAGOGIQUE",
"X11" => "EXPERT CREDIT IMPOT RECHERCHE",
"X30" => "CHAUFFEUR UTILITAIRE",
"X31" => "CHAUFFEUR DE MINISTRE",
"X32" => "CHAUFFEUR DU CABINET",
"X33" => "CHAUFFEUR DE DIRECTION",
"X40" => "CONTROLEUR FINANCIER",
"X50" => "JURISTE",
"X51" => "Correspondant I&L",
"X60" => "SECRETAIRE DE CABINET",
"X70" => "ACMO H&S",
"X71" => "Chargé de service de prévention H&S",
"X80" => "Assesseur"
);
$GLOBALS['supannTypeEntite'] = array (
"C010" => "Groupement d'Intérêt Scientifique (GIS)",
"C020" => "Aide à la conception de produits pédagogiques",
"C021" => "Conception de dispositifs de formation ouverts et à distance",
"C022" => "Coordination d'enseignement transversaux à plusieurs diplômes",
"C023" => "Création et mise en place d'une nouvelle filière",
"C030" => "Haut comité éducation économie",
"C031" => "Organisation",
"C032" => "Participation au développement et à l'animation de formations délocalisées",
"C033" => "Participation aux activités de formation continue",
"C034" => "Programmes pluriannuels de formation (PPF)",
"C035" => "Organisation",
"C050" => "Plateforme technologique",
"E101" => "Conseil d'Administration (CA)",
"E102" => "Section disciplinaire du CA",
"E103" => "Conseil Scientifique (CS)",
"E104" => "Conseil d'UFR",
"E105" => "Conseil d'école",
"E106" => "Conseil d'institut",
"E107" => "Conseil des Etudes et Vie Universitaire (CEVU)",
"E108" => "Conseil de service général universitaire",
"E109" => "Conseil de service commun universitaire",
"E201" => "Commission Paritaire Etablissement",
"E202" => "Commision consultative paritaire",
"E203" => "Commission de conseil",
"E204" => "Commission des Moyens",
"E205" => "Commission des Statuts ",
"E206" => "Commission Administrative Paritaire",
"E301" => "Comité Hygiène et Sécurité",
"E302" => "Comité de Pilotage SGI",
"E303" => "Comité Technique Paritaire ",
"E304" => "Comité consultatif",
"E305" => "Comité de sélection",
"E306" => "Comité de Pilotage SGI",
"E401" => "Jury",
"E801" => "Conseil CROUS",
"E901" => "CNESER (Conseil National de l'Ens. Sup. Rech.)",
"E902" => "CNU Conseil National des Universités",
"E903" => "CTPM Comité Tech. Par. Min. Ens. Sup. Rech.",
"S101" => "Grand établissement",
"S102" => "Université",
"S103" => "Institut ",
"S104" => "École ",
"S105" => "ENS (Ecole Normale Supérieure)",
"S106" => "PRES (si celui-ci est de type EPSCP) sinon il faudra une catégorie N1-Autre",
"S107" => "EFE (Ecole Française de l'Etranger)",
"S108" => "Établissement public administratif rattaché",
"S109" => "Observatoire est-ce un EPSCP? Si oui il faut mettre N1-établissement",
"S120" => "Pôle ",
"S200" => "Composante",
"S201" => "UFR",
"S202" => "Département",
"S203" => "Unité de recherche",
"S204" => "Institut ",
"S205" => "École",
"S206" => "Centre polytechnique universitaire",
"S207" => "OSU (Observatoire des Sciences de l'Univers)",
"S208" => "IUFM",
"S220" => "Structure fédérative de recherche",
"S221" => "Collège des écoles doctorales",
"S222" => "École doctorale",
"S230" => "Service central",
"S231" => "Service général ",
"S233" => "Scolarité",
"S234" => "Centre de ressources ",
"S235" => "Cellule universitaire d'accueil",
"S236" => "Cellule juridique",
"S237" => "Cellule controle gestion",
"S238" => "Centre",
"S239" => "Service culturel et action sociale",
"S240" => "Service des Relations Internationales",
"S241" => "Service inter-universitaire ",
"S250" => "SCD",
"S251" => "Section-SCD",
"S252" => "Formation permanente ",
"S253" => "SCUIO",
"S254" => "SAIC",
"S255" => "Autres comme CEP, UEFAPS, …",
"S256" => "Service technique",
"S257" => "Catégorie prévue dans la loi / peut être appelé \"service-commun-rattaché\"",
"S300" => "Cabinet",
"S301" => "Coordination",
"S302" => "Division",
"S304" => "Mission",
"S310" => "Laboratoire",
"S311" => "Département de formation",
"S312" => "Centre de recherche",
"S330" => "Campus",
"S340" => "Plate-forme de recherche ou plateau technique",
);
// Table de tranduction des roles dans les entites
$GLOBALS['supannTranslateRoleEntiteValueDirectory'] = array(
"SUPANN" => array (
"role" => $GLOBALS['supannRoleGenerique'],
"type" => $GLOBALS['supannTypeEntite']
)
);
// Table des fonctions de tranduction des roles dans les entites
$GLOBALS['supannTranslateFunctionDirectory'] = array(
"no" => array(
"code" => "supanGetEntiteNameById"
)
);
// Table des code UAI
$GLOBALS['tableCodeUAI'] = array(
"0133774G" => "Ecole Centrale de Marseille",
"0840985P" => "Ecole de Gestion et de Commerce d'Avignon",
"0130230E" => "ECOLE DE L'AIR",
"0130239P" => "Ecole Supérieure de Commerce de Marseille du groupe EUROMED",
"0132396J" => "ECOLE SUPERIEURE D'INGENIEURS DE MARSEILLE-CCIMP GROUPE ESIM IMT",
"0133347T" => "Institut Supérieur de Micro-Electronique Appliquée Ecole Nationale Supérieure des Mines de St Etienne",
"0130238N" => "Institut supérieur du Bâtiment et des Travaux Publics - CCIMP",
"0133393T" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE D'AIX MARSEILLE",
"0131842G" => "UNIVERSITE AIX MARSEILLE 1",
"0131843H" => "UNIVERSITE AIX MARSEILLE 2",
"0132364Z" => "UNIVERSITE AIX MARSEILLE 3 PAUL CEZANNE",
"0840685N" => "UNIVERSITE D AVIGNON ET DES PAYS DE VAUCLUSE",
"0801911T" => "ECOLE SUPERIEURE D'INGENIEURS EN ELECTROTECHNIQUE ET ELECTRONIQUE D'AMIENS",
"0800080C" => "GROUPE SUP DE CO ECOLE SUPERIEURE DE COMMERCE",
"0600071B" => "INSTITUT SUPERIEUR AGRICOLE DE BEAUVAIS",
"0801885P" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE D'AMIENS",
"0801344B" => "UNIVERSITE D'AMIENS",
"0601223D" => "UNIVERSITE DE TECHNOLOGIE DE COMPIEGNE",
"0701045F" => "ECOLE DE GESTION, DE COMMERCE DE FRANCHE COMTE",
"0250082D" => "ECOLE NATIONALE SUPERIEURE DE MECANIQUE ET DES MICROTECHNIQUES DE BESANCON",
"0900362E" => "ECOLE SUPERIEURE DES TECHN. ET DES AFFAIRES",
"0251762E" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE BESANCON",
"0251215K" => "UNIVERSITE DE BESANCON",
"0900424X" => "UNIVERSITE DE TECHNOLOGIE DE BELFORT MONTBELIARD",
"0332984P" => "CENT ETUD SUP INDUST BLANQUEFO",
"0332818J" => "ECOLE COMMERCE EUROPEENNE GR INSEEC",
"0641848L" => "ECOLE DE GESTION ET DE COMMERCE DE BAYONNE",
"0330203S" => "ECOLE NATIONALE D'INGENIEURS DES TRAVAUX AGRICOLES DE BORDEAUX",
"0330211A" => "ECOLE SUP DE COMMERCE DE BORDX GRPE BORDX ECOLE MANAGEMENT",
"0640096G" => "ECOLE SUPERIEURE DE COMMERCE",
"0641923T" => "ES TECH INDUS AVANCEES BAYONNE",
"0332524P" => "I.N.S.E.E.C.",
"0332826T" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE BORDEAUX",
"0331764N" => "UNIVERSITE BORDEAUX 1 SCIENCES ET TECHNOLOGIES",
"0331765P" => "UNIVERSITE BORDEAUX 2",
"0331766R" => "UNIVERSITE BORDEAUX 3",
"0332929E" => "UNIVERSITE BORDEAUX 4",
"0640251A" => "UNIVERSITE DE PAU",
"0501840D" => "ECOLE FORMATION GESTION COMM. EGC BASSE NORMANDIE",
"0611136D" => "ECOLE INGENIEURS INSTITUT SUP DE PLASTURGIE",
"0142124H" => "ECOLE MANAGEMENT DE NORMANDIE GROUPE LE HAVRE CAEN",
"0142182W" => "ECOLE SUPERIEURE D INGENIEURS DES TRAVAUX DE LA CONSTRUCTION DE CAEN",
"0142158V" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE CAEN",
"0141408E" => "UNIVERSITE DE CAEN, BASSE NORMANDIE",
"0631786Z" => "ECOLE NATIONALE D'INGENIEURS DES TRAVAUX AGRICOLES DE CLERMONT FERRAND",
"0630109B" => "ECOLE SUPERIEURE DE COMMERCE",
"0631833A" => "INSTITUT FRANÇAIS DE MECANIQUE AVANCEE DE CLERMONT-FERRAND",
"0631821M" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE CLERMONT FERRAND",
"0631262E" => "UNIVERSITE DE CLERMONT FERRAND 1",
"0631525R" => "UNIVERSITE DE CLERMONT FERRAND 2",
"7200709H" => "ECOLE GESTION ET COMMERCE BORGO",
"7200164R" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE CORSE",
"7200664J" => "UNIVERSITE DE CORTE",
"0941934S" => "Ecole d'ingénieurs des technologies de l'information et du management",
"0772517T" => "ECOLE NATIONALE DES PONTS ET CHAUSSEES",
"0772496V" => "ECOLE NATIONALE DES SCIENCES GEOGRAPHIQUES",
"0940607Z" => "Ecole Normale Superieure de Cachan",
"0942095S" => "ECOLE POUR INFORMAT.TECHN.AVA. EPITA",
"0941875C" => "ECOLE SUPERIEURE DES INDUSTRIES DU CAOUTCHOUC",
"0941954N" => "ECOLE SUPERIEURE DES TRAVAUX DE LA CONSTRUCTION DE CACHAN (EX ECOLE SUPERIEURE DES TRAVAUX PUBLICS DE CACHAN)",
"0932019P" => "ECOLE SUPERIEURE D'INGENIEURS EN ELECTROTECHNIQUE ET ELECTRONIQUE DE LA CCI DE PARIS",
"0772219U" => "ESI INFORM GENIE TELECOM AVON ESIGETEL",
"0932341P" => "INST SUPERIEUR TECHNO MANAGT ISTM",
"0930603A" => "institut supérieur de mécanique de paris",
"0941936U" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE CRETEIL",
"0772502B" => "UNIVERSITE MARNE LA VALLEE",
"0931238R" => "UNIVERSITE PARIS NORD VILLETANEUSE",
"0941111X" => "UNIVERSITE PARIS 12 VAL DE MARNE",
"0931827F" => "UNIVERSITE PARIS 8",
"0212024L" => "ETABLISSEMENT NATIONAL D'ENSEIGNEMENT SUPERIEUR AGRONOMIQUE DE DIJON",
"0210099U" => "GROUPE ESC DIJON BOURGOGNE",
"0211960S" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE DIJON",
"0211237F" => "UNIVERSITE DE DIJON",
"0261251U" => "Ecole de commerce gestion administrative et vente",
"0730899F" => "ECOLE SUPERIEURE DE COMMERCE DE CHAMBERY",
"0382778N" => "ECOLE SUPERIEURE DE COMMERCE DE GRENOBLE",
"0381912X" => "INSTITUT POLYTECHNIQUE DE GRENOBLE",
"0382955F" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE GRENOBLE",
"0730858L" => "UNIVERSITE DE CHAMBERY",
"0381838S" => "UNIVERSITE GRENOBLE 1",
"0381839T" => "UNIVERSITE GRENOBLE 2",
"0381840U" => "UNIVERSITE GRENOBLE 3",
"9710939U" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DES ANTILLES GUYANE",
"9710585J" => "UNIVERSITE DES ANTILLES GUYANE",
"9730224F" => "ANTENNE D IUFM IUFM ANTILLES GUYANE",
"0622384E" => "CENTRE D'ETUDES SUPERIEURES INDUSTRIELLES CENTRE REGIONAL DU NORD",
"0595714R" => "EC SUP METROLOGIE DOUAI ECOLE SUPERIEUR DE METROLOGIE",
"0590349J" => "ECOLE CENTRALE DE LILLE",
"0590350K" => "ECOLE DES HAUTES ETUDES COMMERCIALES DU NORD",
"0623921A" => "ECOLE D'INGENIEURS DU PAS DE CALAIS",
"0596163D" => "ECOLE GESTION COMMERCE FLANDRE C.C.I. LILLE-METROPOLE",
"0590311T" => "ECOLE NATIONALE SUPERIEURE DE CHIMIE DE LILLE, RATTACHEE A L'UNIVERSITE DE LILLE 1",
"0590338X" => "ECOLE NATIONALE SUPERIEURE DES ARTS ET INDUSTRIES TEXTILES DE ROUBAIX",
"0590342B" => "ECOLE NATIONALE SUPERIEURE DES TECHNIQUES INDUSTRIELLES ET DES MINES DE DOUAI",
"0590346F" => "ECOLE SUPERIEURE DE COMMERCE DE LILLE",
"0590353N" => "ECOLE SUPERIEURE DES TECHNIQUES INDUSTRIELLES ET DES TEXTILES",
"0590348H" => "HAUTES ETUDES INDUSTRIELLES",
"0590345E" => "INSTITUT CATHOLIQUE D'ARTS ET METIERS",
"0590344D" => "INSTITUT CATHOLIQUE DE LILLE MEMBRE UNIV CATHOLIQUE DE LILL",
"0593202K" => "INSTITUT D'ECONOMIE SCIENTIFIQUE ET DE GESTION",
"0590343C" => "INSTITUT SUPERIEUR D'AGRICULTURE",
"0590347G" => "INSTITUT SUPERIEUR DE L ELECTRONIQUE ET DU NUMERIQUE LILLE",
"0595851P" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE LILLE",
"0623957P" => "UNIVERSITE D'ARTOIS",
"0593559Y" => "UNIVERSITE DE LILLE 1",
"0593560Z" => "UNIVERSITE DE LILLE 2",
"0593561A" => "UNIVERSITE DE LILLE 3",
"0593279U" => "UNIVERSITE DE VALENCIENNES",
"0595964M" => "UNIVERSITE DU LITTORAL",
"0190805X" => "EGC BRIVE ECOLE GESTION ET COMMERCE",
"0870997L" => "INSTITUT D'INGENIERIE INFORMATIQUE DE LIMOGES",
"0871012C" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DU LIMOUSIN",
"0870669E" => "UNIVERSITE DE LIMOGES",
"0011293A" => "ANTENNE DE PLASTURGIE DE L'INSA DE LYON",
"0693180G" => "ASSOCIATION LYONNAISE POUR LA FORMATION - INSTITUT POUR LA DIFFUSION DE LA RECHERCHE ACTIVE COMMERCIALE DE LYON",
"0691696U" => "CENTRE D'ETUDES SUPERIEURES INDUSTRIELLES CENTRE REGIONAL RHONE ALPES AUVERGNE",
"0690194L" => "ECOLE CATHOLIQUE D'ARTS ET METIERS",
"0690187D" => "ECOLE CENTRALE DE LYON",
"0693448Y" => "ECOLE DE COMMERCE EUROPEENNE DE LYON DU GROUPE INSEEC",
"0690197P" => "ECOLE DE MANAGEMENT DE LYON",
"0692587M" => "ECOLE NATIONALE DES TRAVAUX MARITIMES",
"0692566P" => "ECOLE NATIONALE DES TRAVAUX PUBLICS DE L'ETAT",
"0420093Y" => "ECOLE NATIONALE D'INGENIEURS DE SAINT-ETIENNE",
"0420094Z" => "ECOLE NATIONALE SUPERIEURE DES MINES DE SAINT ETIENNE",
"0692459Y" => "ECOLE NATIONALE SUPERIEURE DES SCIENCES DE L'INFORMATION ET DES BIBLIOTHEQUES (E.N.S.S.I.B.)",
"0693259T" => "ECOLE NORMALE SUPERIEURE DE LYON",
"0693817Z" => "ECOLE NORMALE SUPERIEURE LETTRES ET SCIENCES HUMAINES",
"0693623N" => "ECOLE SUPERIEURE DE CHIMIE PHYSIQUE ELECTRONIQUE DE LYON",
"0421601M" => "GROUPE ECOLE SUPERIEURE DE COMMERCE DE SAINT ETIENNE",
"0690195M" => "INSTITUT CATHOLIQUE DE LYON",
"0690192J" => "INSTITUT NATIONAL DES SCIENCES APPLIQUEES DE LYON",
"0692353H" => "INSTITUT SUPERIEUR D'AGRICULTURE RHONE ALPES",
"0693364G" => "INSTITUT TEXTILE ET CHIMIQUE DE LYON (ITECH)",
"0693480H" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE LYON",
"0421095M" => "UNIVERSITE DE SAINT-ETIENNE",
"0691774D" => "UNIVERSITE LYON 1",
"0691775E" => "UNIVERSITE LYON 2",
"0692437Z" => "UNIVERSITE LYON 3",
"9720719Z" => "EC.INTER.AFFAI.MANAGEMENT EIAM-EGC",
"9720706K" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE LA MARTINIQUE",
"0342222F" => "CIESSA MONTPELLIER SUP AGRONOMIE",
"0340131H" => "ECOLE NATIONALE SUPERIEURE AGRONOMIQUE DE MONTPELLIER",
"0300063F" => "ECOLE NATIONALE SUPERIEURE DES TECHNIQUES INDUSTRIELLES ET DES MINES D'ALES",
"0340137P" => "ECOLE SUPERIEURE DE COMMERCE DE MONTPELLIER DU GROUPE SUP DE CODE MONTPELLIER",
"0341818S" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE MONTPELLIER",
"0341087X" => "UNIVERSITE DE MONTPELLIER 1",
"0341089Z" => "UNIVERSITE DE MONTPELLIER 3",
"0301687W" => "Université de Nîmes",
"0660437S" => "UNIVERSITE DE PERPIGNAN VIA DOMITIA",
"0341088Y" => "UNIVERSITE MONTPELLIER 2",
"0542260N" => "CENTRE D'ETUDES SUPERIEURES INDUSTRIELLES CENTRE REGIONAL LORRAINE CHAMPAGNE ARDENNES",
"0570140T" => "ECOLE NATIONALE D'INGENIEURS DE METZ",
"0880077F" => "ECOLE SUPERIEURE DES INDUSTRIES TEXTILES D'EPINAL",
"0573389Z" => "ECOLE SUPERIEURE D'INGENIEURS DES TRAVAUX DE LA CONSTRUCTION DE METZ",
"0573593W" => "ECOLE SUPERIEURE DU SOUDAGE ET DE SES APPLICATIONS",
"0542455A" => "Institut Commercial de Nancy - Ecole de Management",
"0541564G" => "INSTITUT NATIONAL POLYTECHNIQUE DE LORRAINE",
"0542255H" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE NANCY METZ",
"0572081C" => "UNIVERSITE DE METZ",
"0541507V" => "UNIVERSITE NANCY 1",
"0541508W" => "UNIVERSITE NANCY 2",
"0440112H" => "Audencia école management Nantes",
"0442292C" => "CENTRE D'ETUDES SUPERIEURES INDUSTRIELLES CENTRE REGIONAL DES PAYS DE LOIRE",
"0441965X" => "ECOLE ATLANTIQUE DE COMMERCE INTERNATIONAL CHAMBRE DE COMMERCE ET D INDUSTRIE DE NANTES ET DE ST NAZAIRE.",
"0440100V" => "ECOLE CENTRALE DE NANTES",
"0721513D" => "Ecole de gestion et de commerce du Mans",
"0851465F" => "Ecole de gestion et de commerce Vendée",
"0441679L" => "ECOLE NATIONALE D'INGENIEURS DES TECHNIQUES DES INDUSTRIES AGRICOLES ET ALIMENTAIRES",
"0442205H" => "ECOLE NATIONALE SUPERIEURE DES TECHNIQUES INDUSTRIELLES ET DES MINES DE NANTES",
"0492246A" => "ECOLE SUPERIEURE ANGEVINE D'INFORMATIQUE ET DE PRODUCTIQUE",
"0490072M" => "ECOLE SUPERIEURE D'AGRICULTURE D'ANGERS",
"0490075R" => "ECOLE SUPERIEURE D'ELECTRONIQUE DE L'OUEST",
"0721575W" => "ECOLE SUPERIEURE DES GEOMETRES TOPOGRAPHES",
"0490076S" => "ECOLE SUPERIEURE DES SCIENCES COMMERCIALES D ANGERS DU GROUPE ESSCA",
"0442278M" => "ECOLE SUPERIEURE DU BOIS",
"0492202C" => "ECOLE SUPERIEURE ET D APPLICATION DU GENIE",
"0492189N" => "INH ANGERS",
"0442185L" => "INSTITUT CATHOLIQUE D'ARTS ET METIERS DE NANTES",
"0851415B" => "INSTITUT DE FORMATION DE L'UCO AUX METIERS DE L'ENSEIGNEMENT",
"0492248C" => "INSTITUT NATIONAL D'HORTICULTURE - ECOLE NATIONALE D'INGENIEURS DE L'HORTICULTURE ET DU PAYSAGE",
"0492247B" => "INSTITUT NATIONAL D'HORTICULTURE - ECOLE NATIONALE SUPERIEURE D'HORTICULTURE ET D'AMENAGEMENT DU PAYSAGE",
"0721484X" => "INSTITUT SUPERIEUR DES MATERIAUX DU MANS",
"0442199B" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE NANTES",
"0490811R" => "UNIVERSITE CATHOLIQUE DE L'OUEST",
"0490970N" => "UNIVERSITE D'ANGERS",
"0440984F" => "UNIVERSITE DE NANTES",
"0720916E" => "UNIVERSITE LE MANS",
"0060656F" => "ECOLE HTES ETUDES COMMERCIALES C.E.R.A.M.",
"0831521C" => "INSTITUT SUPERIEUR DE MECANIQUE DE PARIS",
"0831458J" => "Institut Supérieur d'Electronique et du Numerique - TOULON",
"0061758D" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE NICE",
"0060931E" => "UNIVERSITE DE NICE",
"0830766G" => "UNIVERSITE DE TOULON",
"9830491S" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DU PACIFIQUE",
"9830445S" => "UNIVERSITE DE LA NOUVELLE-CALEDONIE",
"0451493D" => "EC DE COMMERCE ET DE GESTION ECG (CCI) ORLEANS",
"0371376V" => "EC SUP COMMERCE TOURS GROUPE ESCM TOURS POITIERS",
"0180910S" => "ECOLE NAT SUP ING DE BOURGES",
"0410981U" => "ECOLE NATIONALE SUPERIEURE DE LA NATURE ET DU PAYSAGE DE BLOIS",
"0451482S" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE D'ORLEANS TOURS",
"0370800U" => "UNIVERSITE DE TOURS",
"0450855K" => "UNIVERSITE D'ORLEANS",
"0752092S" => "ACADEMIE COMMERCIALE INTERNATIONALE - NEGOCIA",
"0754988P" => "ADVANCIA",
"0753471R" => "CONSERVATOIRE NATIONAL DES ARTS ET METIERS",
"0753636V" => "EC EUROPEENNE DE GESTION EUROPEAN BUSINESS SCHOOL",
"0754967S" => "EC SUP ACTION ET RECH COMMERC",
"0754431J" => "ECOLE CENTRALE D ́ELECTRONIQUE PARIS",
"0753742K" => "ECOLE DES HAUTES ETUDES EN SCIENCES SOCIALES",
"0750043P" => "ECOLE D'INGENIEURS DE LA VILLE DE PARIS",
"0753478Y" => "ECOLE NATIONALE DES CHARTES",
"0753503A" => "ECOLE NATIONALE DU GENIE RURAL DES EAUX ET DES FORETS",
"0753237L" => "ECOLE NATIONALE SUPERIEURE D'ARTS ET METIERS",
"0753375L" => "ECOLE NATIONALE SUPERIEURE DE CHIMIE DE PARIS, RATTACHEE A L'UNIVERSITE PARIS 6",
"0753493P" => "ECOLE NATIONALE SUPERIEURE DES MINES DE PARIS",
"0751878J" => "ECOLE NATIONALE SUPERIEURE DES TECHNIQUES AVANCEES",
"0753510H" => "ECOLE NATIONALE SUPERIEURE DES TELECOMMUNICATIONS",
"0753455Y" => "ECOLE NORMALE SUPERIEURE",
"0753486G" => "ECOLE PRATIQUE DES HAUTES ETUDES",
"0753574C" => "ECOLE SPECIALE DE MECANIQUE ET D'ELECTRICITE",
"0753607N" => "ECOLE SPECIALE DES TRAVAUX PUBLICS DU BATIMENT ET DE L'INDUSTRIE",
"0753560M" => "ECOLE SUPERIEURE D INFORMATIQUE ELECTRONIQUE AUTOMATIQUE",
"0753547Y" => "ECOLE SUPERIEURE DE COMMERCE DE PARIS-ECOLE EUROPEENNE DES AFFAIRES, CHAMBRE DE COMMERCE ET D INDUSTRIE DE PARIS",
"0753111Z" => "ECOLE SUPERIEURE DE GESTION",
"0753429V" => "ECOLE SUPERIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES DE LA VILLE DE PARIS",
"0754500J" => "INST ETUD ECO ET COMMERCIALES",
"0753147N" => "INST INTERNAT COMMERCE DISTRIB",
"0752792C" => "INST PREPA ADM ET GESTION",
"0752304X" => "INST SUP SC TECHN ET ECO COMM",
"0753620C" => "INST SUPERIEUR DE GESTION",
"0753541S" => "INSTITUT CATHOLIQUE PARIS",
"0753428U" => "INSTITUT DE PHYSIQUE DU GLOBE DE PARIS",
"0753431X" => "INSTITUT D'ETUDES POLITIQUES DE PARIS",
"0753465J" => "INSTITUT NATIONAL AGRONOMIQUE PARIS GRIGNON",
"0755026F" => "INSTITUT NATIONAL D HISTOIRE DE L ART",
"0753488J" => "INSTITUT NATIONAL DES LANGUES ET CIVILISATIONS ORIENTALES",
"0750252S" => "INSTITUT SUP DU COMMERCE",
"0753559L" => "INSTITUT SUPERIEUR D ELECTRONIQUE DE PARIS",
"0754445Z" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE PARIS",
"0753494R" => "MUSEUM NATIONAL D'HISTOIRE NATURELLE",
"0753496T" => "OBSERVATOIRE DE PARIS",
"0750736T" => "UNIVERSITE DE TECHNOLOGIE EN SCIENCES DES ORGANISATIONS ET DE LA DECISION DE PARIS-DAUPHINE",
"0751717J" => "UNIVERSITE PARIS 1",
"0751718K" => "UNIVERSITE PARIS 2",
"0751719L" => "UNIVERSITE PARIS 3",
"0751720M" => "UNIVERSITE PARIS 4",
"0751721N" => "UNIVERSITE PARIS 5",
"0751722P" => "UNIVERSITE PARIS 6",
"0751723R" => "UNIVERSITE PARIS 7",
"0161122H" => "Ecole de gestion et de commerce d'Angoulème",
"0171435T" => "ECOLE D'INGENIEURS EN GENIE DES SYSTEMES INDUSTRIELS",
"0860073M" => "ECOLE NATIONALE SUPERIEURE DE MECANIQUE ET D'AEROTECHNIQUE DE POITIERS, RATTACHEE A L'UNIVERSITE DE POITIERS",
"0171427J" => "ECOLE SUPERIEURE DE COMMERCE",
"0861249R" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE POITOU-CHARENTES",
"0171463Y" => "UNIVERSITE DE LA ROCHELLE",
"0860856N" => "UNIVERSITE DE POITIERS",
"9840349G" => "UNIVERSITE POLYNESIE FRANCAISE",
"0101059X" => "Ecole Supérieure de Commerce",
"0511935B" => "Institut Universitaire de Formation des Maîtres de l'académie de Reims",
"0510088U" => "Reims management school",
"0511296G" => "Université de Reims",
"0101060Y" => "Université de Technologie de Troyes",
"0352330T" => "ECOLE DE GESTION ET DE COMMERCE DE BRETAGNE DE LA CHAMBRE DE COMMERCE ET D'INDUSTRIE DU PAYS DE ST MALO",
"0352337A" => "ECOLE LOUIS DE BROGLIE",
"0350095N" => "ECOLE NATIONALE DE LA SANTE PUBLIQUE",
"0352480F" => "ECOLE NATIONALE DE LA STATISTIQUE ET DE L'ANALYSE DE L'INFORMATION",
"0290119X" => "ECOLE NATIONALE D'INGENIEURS DE BREST",
"0350087E" => "ECOLE NATIONALE SUPERIEURE AGRONOMIQUE DE RENNES (AGROCAMPUS RENNES)",
"0350077U" => "ECOLE NATIONALE SUPERIEURE DE CHIMIE DE RENNES, RATTACHEE A L'UNIVERSITE DE RENNES 1",
"0290125D" => "ECOLE NATIONALE SUPERIEURE DES INGENIEURS DES ETUDES ET TECHNIQUES D'ARMEMENT",
"0291811L" => "ECOLE NATIONALE SUPERIEURE DES TELECOMMUNICATIONS DE BRETAGNE",
"0290124C" => "ECOLE NAVALE",
"0560068V" => "ECOLE SPECIALE MILITAIRE DE SAINT CYR",
"0290127F" => "Ecole Supérieure de Commerce de Bretagne Brest de la Chambre de Commerce et d'Industrie de Brest",
"0351842M" => "ECOLE SUPERIEURE ET D'APPLICATION DES TRANSMISSIONS",
"0352373P" => "ECOLE SUPERIEURE PRIVEE EME",
"0352305R" => "GROUPE ECOLE SUPERIEURE DE COMMERCE DE RENNES",
"0352422T" => "INSTITUT D'ETUDES SUPERIEURES D'INDUSTRIE ET D'ECONOMIE LAITIERES (AGROCAMPUS RENNES)",
"0350097R" => "INSTITUT NATIONAL DES SCIENCES APPLIQUEES DE RENNES",
"0352347L" => "INSTITUT NATIONAL SUPERIEUR DE FORMATION AGROALIMENTAIRE (AGROCAMPUS RENNES)",
"0292125C" => "INSTITUT SUPERIEUR DE L'ELECTRONIQUE ET DU NUMERIQUE",
"0352291A" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE RENNES",
"0290346U" => "UNIVERSITE DE BREST",
"0561718N" => "UNIVERSITE DE BRETAGNE SUD",
"0350936C" => "UNIVERSITE RENNES 1",
"0350937D" => "UNIVERSITE RENNES 2",
"9741101D" => "ECOLE DE GESTION ET COMMERCE CTRE CONSUL FORM.STE CLOTILDE",
"9741061K" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE LA REUNION",
"9740478B" => "UNIVERSITE DE LA REUNION",
"0762969P" => "CENTRE D'ETUDES SUPERIEURES INDUSTRIELLES CENTRE REGIONAL DE NORMANDIE",
"0760167U" => "ECOLE DE SUPERIEURE DE COMMERCE DE ROUEN",
"0760168V" => "ECOLE SUPERIEURE DE COMMERCE SUP. DE CO. LE HAVRE CAEN",
"0762378X" => "ECOLE SUPERIEURE D'INGENIEURS EN GENIE ELECTRIQUE",
"0271338H" => "Ecole supérieure d'ingénieurs et techniciens pour l'agriculture",
"0760165S" => "INSTITUT NATIONAL DES SCIENCES APPLIQUEES DE ROUEN",
"0762970R" => "INSTITUT PORTUAIRE D ENSEIGNEMENT ET RECHERCHE LE HAVRE",
"0762952W" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE ROUEN",
"0761904G" => "UNIVERSITE DE ROUEN",
"0762762P" => "UNIVERSITE DU HAVRE",
"0670189S" => "ECOLE NATIONALE DU GENIE DE L'EAU ET DE L'ENVIRONNEMENT DE STRASBOURG",
"0680097L" => "ECOLE NATIONALE SUPERIEURE DE CHIMIE",
"0670190T" => "Institut nationale des sciences appliquées de Strasbourg",
"0672635A" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L'ACADEMIE DE STRASBOURG",
"0681166Y" => "UNIVERSITE DE MULHOUSE",
"0671712X" => "UNIVERSITE STRASBOURG 1",
"0671713Y" => "UNIVERSITE STRASBOURG 2",
"0671778U" => "UNIVERSITE STRASBOURG 3",
"0312020C" => "Centre d'Etudes Supérieures Industrielles Midi-Pyrénées",
"0811293R" => "Centre Universitaire de Formation et de Recherche du Nord-Est Midi-Pyrénées Jean-Francois Champollion Albi",
"0820822Y" => "Ecole de Gestion et de Commerce",
"0310154Z" => "Ecole d'Ingénieur de purpan",
"0312069F" => "Ecole Nationale de la Météorologie",
"0311256X" => "Ecole Nationale de l'Aviation Civile de Toulouse",
"0650048Z" => "Ecole Nationale d'Ingénieurs de Tarbes",
"0811200P" => "Ecole Nationale Supérieure des Techniques Industrielles et des Mines d'Albi-Carmaux",
"0121367W" => "Ecole supérieure technique privée de gestion commerce informatique",
"0312013V" => "Ecole supérieure technique privée gestion commerce informatique",
"0310156B" => "Groupe Ecole supérieure de Commerce",
"0310155A" => "Institut catholique Toulouse",
"0312421N" => "Institut Catholique d'arts et métiers de Toulouse",
"0310152X" => "Institut National des Sciences Appliquées de Toulouse",
"0311381H" => "Institut National Polytechnique de Toulouse",
"0312760G" => "Institut Supérieur de l'Aéronautique et de l'Espace",
"0312299F" => "Institut Universitaire de Formation des Maîtres Académie de Toulouse Midi-Pyrénées",
"0311382J" => "Université Toulouse 1 Sciences Sociales",
"0311383K" => "Université Toulouse 2 Le Mirail",
"0311384L" => "Université Toulouse 3 Paul Sabatier",
"0922455U" => "CTRE D'ETUDES SUPERIEURES INDUSTRIELLES CTRE REGIONAL D'ILE DE FRANCE",
"0921682D" => "EC NAT STAT ADM ECO MALAKOFF",
"0921225G" => "ECOLE CENTRALE DES ARTS ET MANUFACTURES",
"0951820M" => "ECOLE DE BIOLOGIE INDUSTRIELLE EBI",
"0922369A" => "ECOLE DE MANAGEMENT LEONARD DE VINCI",
"0951819L" => "ECOLE D'ELECTRICITE DE PRODUCTION ET DES METHODES INDUSTRIELLES EPMI",
"0783054W" => "ECOLE HTES ETUDES COMMERCIALES H E C",
"0951623Y" => "ECOLE INTERNATIONALE DES SCIENCES DU TRAITEMENT DE L'INFORMATION",
"0951376E" => "ECOLE NATIONALE SUPERIEURE DE L'ELECTRONIQUE ET DE SES APPLICATIONS DE CERGY",
"0910684Z" => "ECOLE NATIONALE SUPERIEURE DES INDUSTRIES AGRICOLES ET ALIMENTAIRES",
"0920815L" => "ECOLE NATIONALE SUPERIEURE DU PETROLE ET DES MOTEURS DE RUEIL",
"0911568K" => "ECOLE POLYTECHNIQUE",
"0920674H" => "ECOLE POLYTECHNIQUE FEMININE",
"0922007G" => "ECOLE PRIVEE DES DIRIGEANTS ET CREATEURS D'ENTREPRISES",
"0951214D" => "ECOLE SUP SC ECO COMMERCIALES INSTITUT CATHOLIQUE",
"0951803U" => "ECOLE SUPERIEURE DE CHIMIE ORGANIQUE ET MINERALE ESCOM",
"0920672F" => "ECOLE SUPERIEURE DE FONDERIE",
"0911494E" => "ECOLE SUPERIEURE D'ELECTRICITE PRIVEE SUPELEC",
"0921929X" => "ECOLE SUPERIEURE DES TECHNIQUES AERONAUTIQUES ET DE CONSTRUCTION AUTOMOBILE",
"0922563L" => "Ecole Supérieure d'Ingénieurs Léonard De Vinci. Etablissement d'Enseignement Supérieur Technique Privé.",
"0910725U" => "ECOLE SUPERIEURE D'OPTIQUE",
"0922374F" => "ECOLE SUPERIEURE PRIVEE COMMERCE EXTERIEUR ESCE LDV",
"0951804V" => "institut géologique albert de lapparent (igal)",
"0910685A" => "INSTITUT NATIONAL DES SCIENCES ET TECHNIQUES NUCLEAIRES",
"0911781S" => "INSTITUT NATIONAL DES TELECOMMUNICATIONS",
"0951808Z" => "institut supérieur des techniques d'outre-mer (istom)",
"0781938H" => "INSTITUT UNIVERSITAIRE DE FORMATION DES MAITRES DE L 'ACADEMIE DE VERSAILLES",
"0951793H" => "UNIVERSITE CERGY PONTOISE",
"0781944P" => "UNIVERSITE DE VERSAILLES SAINT QUENTIN EN YVELINES",
"0911975C" => "UNIVERSITE EVRY VAL D ESSONNE",
"0921204J" => "UNIVERSITE PARIS 10",
"0911101C" => "UNIVERSITE PARIS 11",
);
$GLOBALS['supannTranslateEtablissementDirectory'] = array(
'UAI' => $GLOBALS['tableCodeUAI']
);
$GLOBALS['supann_CNU'] = array(
"5401" => "PEDIATRIE ",
"5601" => "PEDODONTIE",
"4904" => "PEDOPSYCHIATRIE ",
"4007" => "PHARMACIE CLINIQUE",
"4006" => "PHARMACOGNOSIE",
"4004" => "PHARMACOLOGIE & PHARMACOCINETI",
"4803" => "PHARMACOLOGIE FONDAMENTALE - P",
"3905" => "PHARMACOTECHNIE",
"1700" => "PHILOSOPHIE ",
"4003" => "PHYSIOLOGIE",
"4402" => "PHYSIOLOGIE",
"6600" => "PHYSIOLOGIE ",
"9959" => "PLASTURGIE ",
"5101" => "PNEUMOLOGIE ",
"5603" => "PREVENTION, EPIDEMIOLOGIE, ECO",
"5802" => "PROTHESES (PROTHESE CONJOINTE,",
"4903" => "PSYCHIATRIE D'ADULTES ",
"1600" => "PSYCHOLOGIE ",
"4302" => "RADIOLOGIE ET IMAGERIE MEDICAL",
"4802" => "REANIMATION MEDICALE ",
"5001" => "RHUMATOLOGIE ",
"0000" => "SANS DISCIPLINE",
"4600" => "SANTE PUBLIQUE",
"0400" => "SCIENCE POLITIQUE ",
"5803" => "SCIENCES ANATOMIQUES ET PHYSIO",
"4100" => "SCIENCES BIOLOGIQUES ",
"5703" => "SCIENCES BIOLOGIQUES (BIOCHIMI",
"5700" => "SCIENCES BIOLOGIQUES, MEDECINE",
"0600" => "SCIENCES DE GESTION ",
"7000" => "SCIENCES DE L'EDUCATION ",
"7100" => "SC. DE L'INFO.&DE LA COM.",
"0700" => "LINGUISTIQUE & PHONET. GEN.",
"4000" => "SCIENCES DU MEDICAMENT ",
"0500" => "SCIENCES ECONOMIQUES ",
"7400" => "ACTIVITES SPORT. ET PHYS.",
"4200" => "SCIENCES MORPHOLOGIQUES",
"3900" => "SC. PH-CHIM.&TECH. PHARM. ",
"5800" => "SCIENCES PHYSIQUES ET PHYSIOLO",
"1900" => "SOCIOLOGIE DEMOGRAPHIE ",
"5500" => "SPECIALITES MEDICO-CHIRURGICAL",
"5503" => "STOMATOLOGIE ET CHIRURGIE MAXI",
"3500" => "STRUC EVOL TERRE",
"9975" => "TECHNOLOGIE CHIMIQUE ",
"3600" => "TERRE SOLIDE",
"7501" => "THEOLOGIE CATHOLIQUE ",
"7502" => "THEOLOGIE PROTESTANTE ",
"4804" => "THERAPEUTIQUE ",
"9990" => "TOPOGRAPHIE ",
"4005" => "TOXICOLOGIE",
"9958" => "TRANSFORM. POLYMERES ",
"5204" => "UROLOGIE ",
"XXXX" => "CONVENTION ",
"7600" => "THEOLOGIE CATHOLIQUE ",
"7700" => "THEOLOGIE PROTESTANTE ",
"7500" => "THEOLOGIE",
"2400" => "AMENAG. ESPACE URBANISME ",
"4201" => "ANATOMIE",
"4203" => "ANATOMIE ET CYTOLOGIE PATHOLOG",
"4801" => "ANESTHESIOLOGIE ET REANIMATION",
"4800" => "ANESTHESIOLOGIE, PHARMACOLOGIE",
"2000" => "ANTHROP. ETHNOL. PREHIST.",
"9988" => "ARCHITECTURE",
"1800" => "ARTS ET SCIENCES DE L'ART ",
"3400" => "ASTRONOMIE, ASTROPHYS.",
"9969" => "AUTOMATIQUE ",
"9970" => "AUTOMATIQUE OPT. TEXT. ",
"4104" => "BACTERIOLOGIE & VIROLOGIE",
"4501" => "BACTERIOLOGIE, VIROLOGIE-HYGIE",
"4401" => "BIOCHIMIE ET BIOLOGIE MOLECULA",
"6400" => "BIOCHIM. & BIOL. MOLECUL.",
"4106" => "BIOCHIMIE GENERALE & CLINIQUE",
"4400" => "BIOCHIMIE, BIOLOGIE CELLULAIRE",
"4403" => "BIOLOGIE CELLULAIRE",
"6500" => "BIOLOGIE CELLULAIRE",
"4101" => "BIOLOGIE CELLULAIRE & MOLECULA",
"6800" => "BIOLOGIE DES ORGANISMES ",
"6700" => "BIOLOGIE POPUL. & ECOLOGIE",
"5405" => "BIOLOGIE DU DEVELOPPEMENT ET D",
"3902" => "BIOMATHEMATIQUES",
"3901" => "BIOPHYSIQUE",
"4300" => "BIOPHYSIQUE ET IMAGERIE MEDICA",
"4301" => "BIOPHYSIQUE ET TRAITEMENT DE L",
"4604" => "BIOSTATISTIQUES ET INFORMATIQU",
"4107" => "BOTANIQUE et CRYPTOGAMIE",
"9994" => "BUREAU DES TRAVAUX",
"4702" => "CANCEROLOGIE - RADIOTHERAPIE",
"5102" => "CARDIOLOGIE ET MALADIES VASCUL",
"9972" => "CHIM. OPT. MATERIAUX ",
"9973" => "CHIM. OPTION TEXTILE ",
"3904" => "CHIMIE ANALYTIQUE & BROMATOLOG",
"3300" => "CHIMIE DES MATERIAUX ",
"3903" => "CHIMIE GENERALE ET MINERALE",
"4001" => "CHIMIE ORGANIQUE",
"3200" => "CHIMIE ORGA., MIN., INDUSTR.",
"3100" => "CHIMIE THEOR., PHYS., ANAL.",
"4002" => "CHIMIE THERAPEUTIQUE",
"5702" => "CHIRURGIE BUCCALE, PATHOLOGIE ",
"5202" => "CHIRURGIE DIGESTIVE ",
"5302" => "CHIRURGIE GENERALE",
"5402" => "CHIRURGIE INFANTILE ",
"5002" => "CHIRURGIE ORTHOPEDIQUE ET TRAU",
"5004" => "CHIRURGIE PLASTIQUE, RECONSTRU",
"5103" => "CHIRURGIE THORACIQUE ET CARDIO",
"5104" => "CHIRURGIE VASCULAIRE ",
"2900" => "CONSTITUANTS ELEMENTAIRES ",
"9981" => "CONSTRUC. ELECTRIQUE ",
"9956" => "CONSTRUCTION MECANIQUE ",
"9989" => "CONSTR. TRAV. PUBL. BAT.",
"9992" => "CONS.GC EQU.TECH.BAT.",
"9993" => "CONS. GC.HYD. APP. ME. SO.",
"7300" => "CULTURES & LANGUES REGION.",
"5003" => "DERMATO-VENEREOLOGIE ",
"5600" => "DEVELOPPEMENT , CROISSANCE ET ",
"4009" => "DROIT & ECONOMIE DE LA SANTE",
"0100" => "DROIT PRIVE & SC. CRIMIN.",
"0200" => "DROIT PUBLIC ",
);
$GLOBALS['supannNomenclatures'] = array(
'UAI' => $GLOBALS['tableCodeUAI'],
'SUPANN' => array_merge($GLOBALS['supannTypeEntite'], $GLOBALS['supannRoleGenerique']),
'CNU' => $GLOBALS['supann_CNU'],
);
?>

View File

@ -0,0 +1,325 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
$GLOBALS['LSobjects']['LSsupannEntite'] = array (
'objectclass' => array(
'supannEntite',
'organizationalUnit'
),
'rdn' => 'supannCodeEntite',
'container_dn' => 'ou=structures',
'display_name_format' => '%{description}',
'label' => 'Entities',
// LSform
'LSform' => array (
'ajaxSubmit' => 1,
// Layout
'layout' => array (
'infos' => array(
'label' => 'Informations',
'args' => array (
'description',
'ou',
'supannTypeEntite',
'supannCodeEntite',
'supannRefId',
'supannCodeEntiteParent',
)
),
'com' => array (
'label' => 'Communication',
'args' => array (
'postalAddress',
'telephoneNumber',
'facsimileTelephoneNumber',
'labeledURI',
)
)
)
),
// LSrelation
'LSrelation' => array(
'children' => array(
'label' => 'Children entities',
'emptyText' => "Have any child entity.",
'LSobject' => 'LSsupannEntite',
'list_function' => 'listChildren',
'getkeyvalue_function' => 'getEntiteKeyValue',
'update_function' => 'updateChildren',
'remove_function' => 'deleteOneChild',
'rename_function' => 'renameOneChildren',
'canEdit_function' => 'canEditChildren',
'canEdit_attribute' => 'supannCodeEntiteParent',
'rights' => array(
'admin' => 'r'
)
)
),
'LSsearch' => array (
'attrs' => array (
'ou',
'description',
'supannCodeEntite',
'supannRefId',
'telephoneNumber',
'facsimileTelephoneNumber',
'labeledURI',
'mail',
'postalAddress'
),
),
'attrs' => array (
/* ----------- start -----------*/
'ou' => array (
'label' => "Short name",
'ldap_type' => 'ascii',
'html_type' => 'text',
'required' => 1,
'validation' => array (
array (
'object_type' => 'LSsupannEntite',
'filter' => 'ou=%{val}',
'result' => 0
)
),
'view' => 1,
'rights' => array(
'admin' => 'w'
),
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannCodeEntiteParent' => array (
'label' => 'Parent entity',
'ldap_type' => 'ascii',
'html_type' => 'select_object',
'html_options' => array(
'selectable_object' => array(
'object_type' => 'LSsupannEntite',
'display_name_format' => '%{description}',
'value_attribute' => 'supannCodeEntite'
)
),
'multiple' => 0,
'validation' => array (
array (
'msg' => "This entity doesn't exist.",
'object_type' => 'LSsupannEntite',
'filter' => 'supannCodeEntite=%{val}',
'result' => 1
)
),
'view' => 1,
'rights' => array(
'admin' => 'w'
),
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannCodeEntite' => array (
'label' => 'Entity identifier',
'ldap_type' => 'ascii',
'html_type' => 'text',
'multiple' => 0,
'validation' => array (
array (
'msg' => "This identifier is already affected.",
'object_type' => 'LSsupannEntite',
'filter' => '(supannCodeEntite=%{val})',
'result' => 0
)
),
'view' => 1,
'rights' => array(
'admin' => 'w'
),
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'description' => array (
'label' => 'Description',
'ldap_type' => 'ascii',
'html_type' => 'textarea',
'multiple' => 0,
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'facsimileTelephoneNumber' => array (
'label' => 'Fax',
'ldap_type' => 'ascii',
'html_type' => 'text',
'required' => 0,
'multiple' => 1,
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'mail' => array (
'label' => 'E-mail',
'ldap_type' => 'ascii',
'html_type' => 'mail',
'required' => 0,
'check_data' => array (
'email' => array(
'msg' => "Given email address is invalid.",
),
),
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'postalAddress' => array (
'label' => 'Address',
'ldap_type' => 'postalAddress',
'html_type' => 'textarea',
'required' => 0,
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'telephoneNumber' => array (
'label' => 'Phone',
'ldap_type' => 'ascii',
'html_type' => 'text',
'required' => 0,
'multiple' => 1,
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'labeledURI' => array (
'label' => "Personal website",
'ldap_type' => 'ascii',
'html_type' => 'url',
'required' => 0,
'multiple' => 1,
'rights' => array(
'admin' => 'w',
'companyadmin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannRefId' => array (
'label' => 'Identifier reference',
'ldap_type' => 'ascii',
'html_type' => 'supannLabeledValue',
'required' => 0,
'multiple' => 1,
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannTypeEntite' => array (
'label' => "Entity type",
'ldap_type' => 'ascii',
'html_type' => 'supannTypeEntite',
'multiple' => 1,
'rights' => array(
'admin' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1
)
),
/* ----------- end -----------*/
)
);
?>

View File

@ -0,0 +1,223 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
$GLOBALS['LSobjects']['LSsupannGroup'] = array (
'objectclass' => array(
'groupOfNames',
'supannGroupe'
),
'rdn' => 'cn',
'container_dn' => 'ou=groups',
'display_name_format' => '%{cn}',
'label' => 'Groups',
'LSaddons' => array (
'supann',
),
'LSsearch' => array (
'attrs' => array (
'cn',
'description',
'member',
),
),
'attrs' => array (
/* ----------- start -----------*/
'cn' => array (
'label' => "Name",
'ldap_type' => 'ascii',
'html_type' => 'text',
'required' => 1,
'validation' => array (
array (
'filter' => 'cn=%{val}',
'result' => 0
)
),
'view' => 1,
'rights' => array(
'admin' => 'w',
'owner' => 'w',
'reader' => 'r',
),
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'member' => array (
'label' => 'Members (DN)',
'ldap_type' => 'ascii',
'html_type' => 'select_object',
'html_options' => array(
'selectable_object' => array(
'object_type' => 'LSsupannPerson',
'value_attribute' => 'dn',
)
),
'multiple' => 1,
'rights' => array(
'admin' => 'w',
'owner' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'description' => array (
'label' => 'Description',
'ldap_type' => 'ascii',
'html_type' => 'textarea',
'multiple' => 0,
'rights' => array(
'admin' => 'w',
'owner' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'owner' => array (
'label' => 'Owner (DN)',
'ldap_type' => 'ascii',
'html_type' => 'select_object',
'html_options' => array(
'selectable_object' => array(
'object_type' => 'LSsupannPerson',
'value_attribute' => 'dn',
)
),
'multiple' => 1,
'rights' => array(
'admin' => 'w',
'owner' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannGroupeAdminDN' => array (
'label' => 'Admin (DN)',
'ldap_type' => 'ascii',
'html_type' => 'select_object',
'html_options' => array(
'selectable_object' => array(
'object_type' => 'LSsupannPerson',
'value_attribute' => 'dn',
)
),
'multiple' => 1,
'rights' => array(
'admin' => 'w',
'owner' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannGroupeLecteurDN' => array (
'label' => 'Reader (DN)',
'ldap_type' => 'ascii',
'html_type' => 'select_object',
'html_options' => array(
'selectable_object' => array(
'object_type' => 'LSsupannPerson',
'value_attribute' => 'dn',
)
),
'multiple' => 1,
'rights' => array(
'admin' => 'w',
'owner' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannGroupeDateFin' => array (
'label' => 'Group End Date',
'ldap_type' => 'date',
'html_type' => 'date',
'html_options' => array(
'date' => array(
'time' => 1,
)
),
'multiple' => 0,
'rights' => array(
'admin' => 'w',
'owner' => 'w'
),
'view' => 1,
'form' => array (
'modify' => 1,
'create' => 1
)
),
/* ----------- end -----------*/
/* ----------- start -----------*/
'supannRefId' => array (
'label' => 'Identifier reference',
'ldap_type' => 'ascii',
'html_type' => 'text',
'rights' => array(
'admin' => 'w',
'owner' => 'w',
),
'multiple' => 1,
'view' => 1,
'form' => array (
'create' => 1,
'modify' => 1
)
),
/* ----------- end -----------*/
)
);
?>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,25 @@
<?php
/**
* Copyright (C) 2014 Entr'ouvert
*/
$BCN_N_CORPS = array();
$liste_affiliations = array(
"student" => "student",
"faculty" => "faculty",
"staff" => "staff",
"employee" => "employee",
"member" => "member",
"affiliate" => "affiliate",
"alum" => "alum",
// "library-walk-in" => "library-walk-in",
"researcher" => "researcher",
"retired" => "retired",
"emeritus" => "emeritus",
"teacher" => "teacher",
"registered-reader" => "registered-reader",
);
$liste_preferredLanguage = array();

View File

@ -0,0 +1,27 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
$GLOBALS['LSaddons']['loads'] = array (
'supann',
);
?>

128
local/conf/config.inc.php Normal file
View File

@ -0,0 +1,128 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
// Configuration LDAP Saisie :
$GLOBALS['LSconfig'] = array(
'NetLDAP2' => '/usr/share/php/Net/LDAP2.php',
'Smarty' => '/usr/share/php/smarty3/Smarty.class.php',
'lang' => 'fr_FR',
'encoding' => 'UTF8',
'cacheLSprofiles' => true,
'cacheSubDn' => true,
'cacheSearch' => true,
'keepLSsessionActive' => true,
'ldap_servers' => array (
array (
'name' => 'LSexample',
'ldap_config'=> array(
'host' => '192.168.43.23',
'port' => 389,
'version' => 3,
'starttls' => false,
'binddn' => 'uid=admin,ou=people,dc=sorbine,dc=fr',
'bindpw' => '',
'basedn' => 'dc=sorbine,dc=fr',
'options' => array(),
'filter' => '(objectClass=*)',
'scope' => 'sub'
),
'LSprofiles' => array (
'admin' => array (
'dc=sorbine,dc=fr' => array (
'cn=admin,ou=groups,dc=sorbine,dc=fr' => array (
'attr_value' => '%{dn}',
'attr' => 'member',
'LSobject' => 'LSsupannGroup'
)
),
// 'LSobjects' => array (
// 'LSsupannGroup' => array(
// 'attr' => 'supannGroupeAdminDN',
// 'attr_value' => '%{dn}',
// )
// )
),
'owner' => array (
'LSobjects' => array (
'LSsupannGroup' => array(
'attr' => 'owner',
'attr_value' => '%{dn}',
)
)
),
'reader' => array (
'LSobjects' => array (
'LSsupannGroup' => array(
'attr' => 'supannGroupeLecteurDN',
'attr_value' => '%{dn}',
)
)
)
),
'cacheLSprofiles' => false,
'cacheSearch' => true,
'authObjectType' => 'LSsupannPerson',
'authObjectFilter' => '(|(uid=%{user})(mail=%{user})(supannAliasLogin=%{user}))',
'authObjectTypeAttrPwd' => 'userPassword',
'LSaccess' => array(
'LSsupannEntite',
'LSsupannPerson',
'LSsupannGroup'
),
),
)
);
// Interface
// Theme Black
//define('LS_THEME','black');
//define('LS_TEMPLATES_DIR', 'templates/default');
// Theme Default
define('LS_THEME','default');
define('LS_TEMPLATES_DIR', 'templates');
define('LS_IMAGES_DIR', 'images');
define('LS_CSS_DIR', 'css');
//Debug
define('LSdebug',false);
// Logs
$GLOBALS['LSlog']['filename'] = '/var/log/ldapsaisie/ldapsaisie.log';
$GLOBALS['LSlog']['enable'] = true;
define('NB_LSOBJECT_LIST',20);
define('NB_LSOBJECT_LIST_SELECT',11);
define('MAX_SEND_FILE_SIZE',2000000);
// Javascript
$GLOBALS['defaultJSscipts']=array(
'mootools-core.js',
'mootools-more.js',
'functions.js',
'LSdefault.js',
'LSinfosBox.js'
);
?>

View File

@ -0,0 +1,441 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
// Messages d'erreur
// Support
LSerror :: defineError('SUPANN_SUPPORT_01',
_("SUPANN Support : The constant %{const} is not defined.")
);
LSerror :: defineError('SUPANN_SUPPORT_02',
_("SUPANN Support : The LSobject type %{type} does not exist. Can't work with entities..")
);
LSerror :: defineError('SUPANN_SUPPORT_03',
_("SUPANN Support : The global array %{array} is not defined.")
);
// Autres erreurs
LSerror :: defineError('SUPANN_01',
_("SUPANN Support : The attribute %{dependency} is missing. Unable to forge the attribute %{attr}.")
);
LSerror :: defineError('SUPANN_02',
_("SUPANN Support : Can't get the basedn of entities. Unable to forge the attribute %{attr}.")
);
/**
* Verification du support SUPANN par ldapSaisie
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @retval boolean true si SUPANN est pleinement supporté, false sinon
*/
function LSaddon_supann_support() {
$retval = true;
$MUST_DEFINE_CONST= array(
'LS_SUPANN_LASTNAME_ATTR',
'LS_SUPANN_FIRSTNAME_ATTR',
'LS_SUPANN_LSOBJECT_ENTITE_TYPE',
'LS_SUPANN_LSOBJECT_ENTITE_FORMAT_SHORTNAME',
'LS_SUPANN_ETABLISSEMENT_UAI',
'LS_SUPANN_ETABLISSEMENT_DN'
);
foreach($MUST_DEFINE_CONST as $const) {
if ( (!defined($const)) || (constant($const) == "")) {
LSerror :: addErrorCode('SUPANN_SUPPORT_01',$const);
$retval=false;
}
}
$MUST_DEFINE_ARRAY= array(
'supannRoleGenerique',
'supannTypeEntite',
'supannTranslateRoleEntiteValueDirectory',
'supannTranslateFunctionDirectory',
'tableCodeUAI',
'supannTranslateEtablissementDirectory',
'supannNomenclatures',
);
foreach($MUST_DEFINE_ARRAY as $array) {
if ( !isset($GLOBALS[$array]) || !is_array($GLOBALS[$array])) {
LSerror :: addErrorCode('SUPANN_SUPPORT_01',$array);
$retval=false;
}
}
if ( defined('LS_SUPANN_LSOBJECT_ENTITE_TYPE') ) {
if ( ! LSsession :: loadLSobject( LS_SUPANN_LSOBJECT_ENTITE_TYPE ) ) {
LSerror :: addErrorCode('SUPANN_SUPPORT_02', LS_SUPANN_LSOBJECT_ENTITE_TYPE);
}
}
return $retval;
}
/**
* Generation du displayName
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @param[in] $ldapObject L'objet ldap
*
* @retval string Le displayName ou false si il y a un problème durant la génération
*/
function generate_displayName($ldapObject) {
if ( get_class($ldapObject -> attrs[ LS_SUPANN_LASTNAME_ATTR ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => LS_SUPANN_LASTNAME_ATTR, 'attr' => 'cn'));
return;
}
if ( get_class($ldapObject -> attrs[ LS_SUPANN_FIRSTNAME_ATTR ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => LS_SUPANN_FIRSTNAME_ATTR, 'attr' => 'cn'));
return;
}
$noms = $ldapObject -> attrs[ LS_SUPANN_LASTNAME_ATTR ] -> getValue();
$prenoms = $ldapObject -> attrs[ LS_SUPANN_FIRSTNAME_ATTR ] -> getValue();
return ($prenoms[0].' '.$noms[0]);
}
/**
* Generation du CN
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @param[in] $ldapObject L'objet ldap
*
* @retval string Le CN ou false si il y a un problème durant la génération
*/
function generate_cn($ldapObject) {
if ( get_class($ldapObject -> attrs[ LS_SUPANN_LASTNAME_ATTR ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => LS_SUPANN_LASTNAME_ATTR, 'attr' => 'cn'));
return;
}
if ( get_class($ldapObject -> attrs[ LS_SUPANN_FIRSTNAME_ATTR ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => LS_SUPANN_FIRSTNAME_ATTR, 'attr' => 'cn'));
return;
}
$noms = $ldapObject -> attrs[ LS_SUPANN_LASTNAME_ATTR ] -> getValue();
$prenoms = $ldapObject -> attrs[ LS_SUPANN_FIRSTNAME_ATTR ] -> getValue();
return (withoutAccents($noms[0]).' '.withoutAccents($prenoms[0]));
}
/**
* Generation des valeurs de l'attribut eduPersonOrgUnitDN à partir des
* valeurs de l'attribut supannEntiteAffectation.
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @param[in] $ldapObject L'objet ldap
*
* @retval array Les valeurs de l'attribut eduPersonOrgUnitDN ou false
* si il y a un problème durant la génération
*/
function generate_eduPersonOrgUnitDN($ldapObject) {
if ( get_class($ldapObject -> attrs[ 'supannEntiteAffectation' ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => 'supannEntiteAffectation', 'attr' => 'eduPersonOrgUnitDN'));
return;
}
$affectations = $ldapObject -> attrs[ 'supannEntiteAffectation' ] -> getUpdateData();
$basedn=LSconfig :: get('LSobjects.'.LS_SUPANN_LSOBJECT_ENTITE_TYPE.'.container_dn').','.LSsession::getTopDn();
if ($basedn=="") {
LSerror :: addErrorCode('SUPANN_02','eduPersonOrgUnitDN');
return;
}
$retval=array();
foreach ($affectations as $aff) {
$retval[]="supannCodeEntite=".$aff.",$basedn";
}
return $retval;
}
/**
* Generation de la valeur de l'attribut eduPersonPrimaryOrgUnitDN
* à partir de la valeur de l'attribut supannEntiteAffectationPrincipale.
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @param[in] $ldapObject L'objet ldap
*
* @retval array La valeur de l'attribut eduPersonPrimaryOrgUnitDN
* ou false si il y a un problème durant la génération
*/
function generate_eduPersonPrimaryOrgUnitDN($ldapObject) {
if ( get_class($ldapObject -> attrs[ 'supannEntiteAffectationPrincipale' ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => 'supannEntiteAffectationPrincipale', 'attr' => 'eduPersonPrimaryOrgUnitDN'));
return;
}
$affectations = $ldapObject -> attrs[ 'supannEntiteAffectationPrincipale' ] -> getUpdateData();
$basedn=LSconfig :: get('LSobjects.'.LS_SUPANN_LSOBJECT_ENTITE_TYPE.'.container_dn').','.LSsession::getTopDn();
if ($basedn=="") {
LSerror :: addErrorCode('SUPANN_02','eduPersonPrimaryOrgUnitDN');
return;
}
$retval=array();
foreach ($affectations as $aff) {
$retval[]="supannCodeEntite=".$aff.",$basedn";
}
return $retval;
}
/**
* Generation de la valeur de l'attribut eduPersonOrgDN
* à partir de la valeur de l'attribut supannEtablissement.
*
* La valeur sera LS_SUPANN_ETABLISSEMENT_DN si l'attribut supannEtablissement
* vaut {UAI}LS_SUPANN_ETABLISSEMENT_UAI.
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @param[in] $ldapObject L'objet ldap
*
* @retval array La valeur de l'attribut eduPersonOrgDN ou false
* si il y a un problème durant la génération
*/
function generate_eduPersonOrgDN($ldapObject) {
if ( get_class($ldapObject -> attrs[ 'supannEtablissement' ]) != 'LSattribute' ) {
LSerror :: addErrorCode('SUPANN_01',array('dependency' => 'supannEtablissement', 'attr' => 'eduPersonOrgDN'));
return;
}
$eta = $ldapObject -> attrs[ 'supannEtablissement' ] -> getUpdateData();
$retval=array();
if ($eta[0] == '{UAI}'.LS_SUPANN_ETABLISSEMENT_UAI) {
$retval[] = LS_SUPANN_ETABLISSEMENT_DN;
}
return $retval;
}
/**
* Parse une valeur composite SUPANN
*
* Exemple de valeur :
*
* [key1=value][key2=value][key3=value]
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @param[in] $val La valeur composite
*
* @retval array Un tableau contenant key->value ou false en cas d'erreur
**/
function supannParseCompositeValue($val) {
if (preg_match_all('/\[([^=]*)=([^\]]*)\]/',$val,$matches)) {
$parseValue=array();
for($i=0;$i<count($matches[0]);$i++) {
$parseValue[$matches[1][$i]]=$matches[2][$i];
}
return $parseValue;
}
return;
}
/**
* Retourne une eventuelle fonction de traduction d'une valeur
* en fonction de son label et de sa cle.
*
* Utilise la table $GLOBALS['supannTranslateFunctionDirectory']
*
* @param[in] $label Le label de la valeur
* @param[in] $key La cle de la valeur
*
* @retval string|false Le nom de la fonction de traduction ou false
**/
function supannTranslateRoleEntiteFunction($label,$key) {
if (isset($GLOBALS['supannTranslateFunctionDirectory'][$label][$key])) {
return $GLOBALS['supannTranslateFunctionDirectory'][$label][$key];
}
return;
}
/**
* Retourne le nom court d'une entite en fonction de son identifiant
*
* Fonction utilise comme fonction de traduction dans la fonction
* supannTranslateRoleEntiteValue()
*
* @param[in] $label Le label de la valeur
* @param[in] $key La cle de la valeur
* @param[in] $value La valeur : l'identifiant de l'entite (supannCodeEntite)
*
* @retval string Le nom de l'entite
**/
function supanGetEntiteNameById($label,$key,$value) {
if (LSsession::loadLSobject(LS_SUPANN_LSOBJECT_ENTITE_TYPE)) {
$type=LS_SUPANN_LSOBJECT_ENTITE_TYPE;
$e = new $type();
$list=$e -> listObjectsName("(supannCodeEntite=$value)",NULL,array(),LS_SUPANN_LSOBJECT_ENTITE_FORMAT_SHORTNAME);
if (count($list)==1) {
return array(
'translated' => array_pop($list),
'label' => $label
);
}
}
return array(
'translated' => getFData(__("%{value} (unrecognized value)"),$value),
'label' => $label
);
}
/**
* Parse une valeur a etiquette SUPANN
*
* Exemple de valeur :
*
* {SUPANN}S410
*
* @param[in] $val La valeur
*
* @retval array Un tableau cle->valeur contenant label et value ou False
**/
function supannParseLabeledValue($value) {
if (preg_match('/^\{([^\}]*)\}(.*)$/',$value,$m)) {
return array(
'label'=>$m[1],
'value'=>$m[2]
);
}
return;
}
/**
* Simple découpage label/valeur sans traduction réel
*
* @param[in] $key La cle
* @param[in] $value La valeur
*
* @retval array Un tableau cle->valeur contenant label et translated
**/
function supannTranslateLabeledValue($value) {
$label='no';
$pl=supannParseLabeledValue($value);
if ($pl) {
$label=$pl['label'];
$value=$pl['value'];
}
if (isset($GLOBALS['supannNomenclatures'][$label][$key])) {
$translated = $GLOBALS['supannNomenclatures'][$label][$key];
} else {
$translated = $value;
}
return array(
'label' => $label,
'translated' => $translated
);
}
/**
* Traduit une valeur en fonction de sa cle extrait d'un attribut
* supannRoleEntite.
*
* @param[in] $key La cle
* @param[in] $value La valeur
*
* @retval array Un tableau cle->valeur contenant label et translated ou False
**/
function supannTranslateRoleEntiteValue($key,$value) {
$label='no';
$pl=supannParseLabeledValue($value);
if ($pl) {
$label=$pl['label'];
$value=$pl['value'];
}
// Translate by method
if (supannTranslateRoleEntiteFunction($label,$key)) {
$func = supannTranslateRoleEntiteFunction($label,$key);
if (function_exists($func)) {
try {
return $func($label,$key,$value);
}
catch (Exception $e) {
return;
}
}
else {
return;
}
}
// Translate by directory
elseif (isset($GLOBALS['supannTranslateRoleEntiteValueDirectory'][$label][$key][$value])) {
return array(
'translated' => $GLOBALS['supannTranslateRoleEntiteValueDirectory'][$label][$key][$value],
'label' => $label
);
}
else {
return array(
'label' => $label,
'translated' => $value
);
}
}
/**
* Traduit une valeur en fonction de sa cle extrait d'un attribut
* supannEtablissement
*
* @param[in] $key La cle
* @param[in] $value La valeur
*
* @retval array Un tableau cle->valeur contenant label et translated
**/
function supannTranslateEtablissement($value) {
$label='no';
$pl=supannParseLabeledValue($value);
if ($pl) {
$label=$pl['label'];
$value=$pl['value'];
}
if (isset($GLOBALS['supannTranslateEtablissementDirectory'][$label][$value])) {
return array(
'translated' => $GLOBALS['supannTranslateEtablissementDirectory'][$label][$value],
'label' => $label
);
}
else {
return array(
'label' => $label,
'translated' => $value
);
}
}
?>

View File

@ -0,0 +1,68 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
/**
* Objet Ldap supannEntite
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*/
class LSsupannEntite extends LSldapObject {
var $entiteObjectType = 'LSsupannEntite';
var $parentAttr = 'supannCodeEntiteParent';
var $parentAttrValue = 'supannCodeEntite';
/* ========== Children entities ========== */
function getEntiteKeyValue($object) {
return $this -> getObjectKeyValueInRelation($object,$this -> parentAttr,$this -> entiteObjectType);
}
function listChildren($object) {
return $this -> listObjectsInRelation($object,$this -> parentAttr,$this -> entiteObjectType,$this -> parentAttrValue);
}
function addOneChild($object) {
return $this -> addOneObjectInRelation($object,$this -> parentAttr, $this -> entiteObjectType,$this -> parentAttrValue,'canEditChildren');
}
function deleteOneChild($object) {
return $this -> deleteOneObjectInRelation($object,$this -> parentAttr,$this -> entiteObjectType,$this -> parentAttrValue,'canEditChildren');
}
function renameOneChildren($object,$oldDn) {
return $this -> renameOneObjectInRelation($object,$oldDn,$this -> parentAttr,$this -> entiteObjectType,$this -> parentAttrValue);
}
function updateChildren($object,$listDns) {
return $this -> updateObjectsInRelation($object,$listDns,$this -> parentAttr,$this -> entiteObjectType,$this -> parentAttrValue,'canEditChildren');
}
function canEditChildren($dn=NULL) {
if (!$dn) {
$dn=$this -> dn;
}
return LSsession :: canEdit($this -> type_name,$this -> dn,$this -> parentAttr);
}
}
?>

View File

@ -0,0 +1,119 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
/**
* Objet Ldap supannGroup
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*/
class LSsupannGroup extends LSldapObject {
var $userObjectType = 'LSsupannPerson';
var $memberAttr = 'member';
var $memberAttrValue = 'dn';
/* ========== Members ========== */
/**
* Retourne la valeur clef d'un membre
*
* @param[in] $object Un object utilisateur
*
* @retval Mixed La valeur clef d'un membre
**/
function getMemberKeyValue($object) {
return $this -> getObjectKeyValueInRelation($object,$this -> memberAttr,$this -> userObjectType);
}
/**
* Retourne la liste des groupes pour utilisateur
*
* Retourne un tableau de LSsupannGroup correspondant aux groupes
* auxquels appartient un utilisateur
*
* @param[in] $userObject Un object user (type : $this -> userObjectType)
*
* @retval Array of LSsupannGroup Les groupes de l'utilisateur
**/
function listUserGroups($userObject) {
return $this -> listObjectsInRelation($userObject,$this -> memberAttr,$this -> userObjectType,$this -> memberAttrValue);
}
/**
* Ajoute un utilisateur au groupe
*
* @param[in] $object Un object user ($this -> userObjectType) : l'utilisateur à ajouter
*
* @retval boolean true si l'utilisateur à été ajouté, False sinon
**/
function addOneMember($object) {
return $this -> addOneObjectInRelation($object,$this -> memberAttr, $this -> userObjectType,$this -> memberAttrValue,'canEditGroupRelation');
}
/**
* Supprime un utilisateur du groupe
*
* @param[in] $object Un object (type : $this -> userObjectType) : l'utilisateur à supprimer
*
* @retval boolean true si l'utilisateur à été supprimé, False sinon
**/
function deleteOneMember($object) {
return $this -> deleteOneObjectInRelation($object,$this -> memberAttr,$this -> userObjectType,$this -> memberAttrValue,'canEditGroupRelation');
}
/**
* Renome un utilisateur du groupe
*
* @param[in] $object Un object (type : $this -> userObjectType) : l'utilisateur à renomer
* @param[in] $oldDn string L'ancien DN de l'utilisateur
*
* @retval boolean True en cas de succès, False sinon
*/
function renameOneMember($object,$oldDn) {
return $this -> renameOneObjectInRelation($object,$oldDn,$this -> memberAttr,$this -> userObjectType,$this -> memberAttrValue);
}
/**
* Met à jour les groupes d'un utilisateur
*
* @param[in] $object Mixed Un object (type : $this -> userObjectType) : l'utilisateur
* @param[in] $listDns Array(string) Un tableau des DNs des groupes de l'utilisateur
*
* @retval boolean true si tout c'est bien passé, False sinon
**/
function updateUserGroups($object,$listDns) {
return $this -> updateObjectsInRelation($object,$listDns,$this -> memberAttr,$this -> userObjectType,$this -> memberAttrValue,'canEditGroupRelation');
}
/**
* Test si l'utilisateur peut d'editer la relation avec ce groupe
*
* @retval boolean true si tout l'utilisateur peut éditer la relation, False sinon
**/
function canEditGroupRelation($dn=NULL) {
if (!$dn) {
$dn=$this -> dn;
}
return LSsession :: canEdit($this -> type_name,$this -> dn,$this -> memberAttr);
}
}
?>

View File

@ -0,0 +1,32 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* 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.
******************************************************************************/
/**
* Objet Ldap supannPerson
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*/
class LSsupannPerson extends LSldapObject {
// ~
}
?>