Whatsnew 1.5

De Wikipfc2i.

V 1.5


Certaines modifications seront implantées seulement en version 1.6 ...

Le code de la plateforme est disponible sous phpxref ici

L' historique des révisions SVN est disponible ici

Vous pouvez aussi consulter les questions les plus fréquentes

Sommaire

installation et mise à jour

Le code de la plateforme 1.5 n'est disponible que sur la plateforme nationale pour les correspondants C2i en ayant fait la demande. Après vous êtes connecté avec les identifiants qui vous auront été transmis, vous trouverez dans l'écran 'configuration' les liens suivants : Telecharger code 15.png

Pour une première installation, choisissez l'une des options 'complète', 'certification' ou 'positionnement'.


Pour une mise à jour d'une plateforme locale existante, choisissez la dernière option.

Dans tous les cas vous recevrez une archive zip (c2i_pc.zip, c2i_p.zip, c2i_c.zip ou c2i_maj.zip) que vous devrez décompresser dans l'arborescence web de votre serveur HTTP. Telecharger code 15 1.png


Après avoir décompressé cette archive dans l'arborescence Web de votre serveur, rendez-vous sur cette page pour une première installation ou celle-ci pour une mise à jour d'une version précédente (v 1.4) ou celle-ci si vous avez déjà une version 1.5 installée.


Sur la plateforme nationale, l'administrateur doit mettre en place un 'script cron' qui ira chercher chaque nuit sur le serveur subversion du CRU la dernière version du code de la plate forme comme ceci :

#va chercher la dernière version sur svn@cru pour les téléchargements
#ce script doit être mis dans le crontab  d'un utilisateur ayant un compte sur svn@cru ET le droit d'écrire dans le dossier ci-dessous
# /work/c2iv15  : ce nom DOIT correspondre à la variable de configuration c2iconfig.chemin_ressources sur la PF nationale
#  telechargement/c2in1.pf/1.5   ne pas modifier. il s'agit de la version 1.5 de la plateforme c2i niveau 1
#  lorsque d'autres versions seront mises en ligne la partie '1.5' sera automatiquement mise à jour
#  lorsque d'autres c2i seront déployés, il suffira de changer c2in1 en c2in2_xxxx dans le script nationale/telecharger_pf.php
 
cd /work/c2iv15/telechargement/c2in1.pf/1.5
rm -rf plate-forme
svn export https://subversion.cru.fr/pf-c2i-1/branches/V1.4/plate-forme --force

synchronisation avec la plateforme nationale

Le code a été entièrement réécrit et utilise désormais un Web service entre votre plateforme locale et la nationale.

les "examens générés par la plateforme nationale" des versions précédentes ont disparus ; le téléchargement des questions en v1.5 fonctionne sans les créer

ils sont virés lors de la mise à jour d'une plateforme en 1.5.

cela simplifie les critères de la liste des examens et enlève un item de configuration ...


Pour en savoir plus, voyez cette page.

authentification

le code d'entrée sur la plateforme été entièrement réécrit. Il n'est plus nécessaire de créer des comptes 'manuel' pour des personnels ayant un compte LDAP. Juste créer le compte avec le bon login et sélectionnez l'option compte CAS/LDAP dans la rubrique "méthode d'authentification". Les informations manquantes ou incorrectes (nom,prénom, mail et numéro suppann seront récupérés par la plateforme à sa première connexion.

Notez que dans ce cas un mot de passe 'bidon' est généré est sera ensuite ignoré... idem si on crée un nouveau candidat (ca n'existait pas en V1.4, il fallait passer par nouvelles inscriptions pour le faire)


Saisie compte ldap.png


Important : La plate-forme ne crée pas automatiquement un compte à la connexion d'un utilisateur LDAP/CAS inconnu. Dans ce cas la connexion est refusée. Donc pour les personnels, vous devrez créer les comptes dans l'écran approprié (Accès, Personnel) ; pour les candidats les comptes seront créés automatiquement, si nécessaire, lors des inscriptions (massives) aux examens existants. Le critère de recherche étant systématiquement le numéro d'étudiant, qui reste l'information unique la plus fiable dans un établissement, même doté de composantes.


En V 1.6 les deux tables utilisateurs et candidats seront fusionnées.

authentification CAS et login hybride

Tout se passe dans commun/constantes.php

/**
 * section 4  service CAS
 * si les  variables cas_* sont définies ici, les authentifications
 * se feront  par le CAS, obligatoirement avec la valeur 1 à cas_force 
 
*/

/*
$cas_url="cas.exemple.fr";
$cas_port=443;
$cas_service="cas";
*/
$cas_force=1;
$cas_url="cas.insa-lyon.fr";
$cas_port=443;
$cas_service="cas";


Elle peut être forcée ou non.

  • si elle est forcée, toutes les demandes d'authentifiaction sont redirigées vers le serveur CAS de l'établissement.
  • Sinon la page d'accueil a un bouton à gauche : "Accès par connexion sécurisée"

Login hydride.png

  • Les utilisateurs ayant un compte SSO sur l'ENT de l'établissement (et ayant au compte déclaré comme CAS/LDAP dans la plateforme !)

devraient passer par ce bouton. Si ils étaient déja connectés à une autre application de leur ENT, la connexion devrait être immédiate sans demande du login/mot de passe.

  • Ils pourraient probablement dans la plupart des cas retaper leur login/mot de passe dans la zone de droite, puisqu'un CAS est en principe couplé avec un annuaire LDAP, mais ils perdraient la sécurité apportée par le CAS/SSO....
  • Les utilisateurs ayant un compte 'manuel' sur la plateforme doivent bien sur passer par le formulaire de droite.

A compter de la révision 1.5 978 (Décembre 2010) le client CAS utilisé par la plate-forme a été mis à jour avec la dernière version (1.1.4) suite à de nombreuses alertes de sécurité https://wiki.jasig.org/display/CASC/phpCAS .

configuration

la plateforme propose une centaine d'options de configuration dans la table c2iconfig. Vous pouvez les modifier dans l'option 'configuration avancée' du menu Configuration


Configuration avancee 2.png

themes personnalisables

les 'templates' ont été débarrassés de toutes les directives de mise en forme HTML (bgcolor, align, width ...) non conformes W3C sauf pour les écrans 'Configuration et Acces . La plateforme utilise par défaut une feuille de style située dans themes/v14.

Si vous voulez la personnaliser, dupliquer ce dossier , renommer le en monstyle, éditer la feuille de style ou changer les images (pas les noms !) et renseigner la variable de configuration 'style' dans la table c2iconfig (changez la de 'v14' en 'monstyle').

traductions

Depuis l'origine la plateforme peut être traduite dans d'autres langues 'latines' en dupliquant le fichier langues/fr.php sous un autre nom (ex. en.php) et en traduisant les textes situés dans les 'colonnes' de droite. Il vous suffira ensuite de modifier la valeur de la constante $fichier_langue_defaut dans commun/constantes.php :



$fichier_langue_defaut = "fr.php"; 	// fichier de langue par défaut


A partir de la version 1.6, le passage de la base de données en UTF8 permettra la traduction dans des langues 'non latines' comme l'arabe ou le vietnamien.

Ce fichier devenant de plus en plus volumineux, il commence à être fragmenté en plaçant des parties spécifiques dans un fichier langues/fr.php dans certains répertoires du dossier codes. Ce fichier sera automatiquement chargé par la page appelée si elle est située dans ce dossier.

Cette technique est utilisée pour les scripts d'installation. Ces chaînes ne sont utilisées qu'une fois, il aurait donc été regrettable d'alourdir le chargement de toutes les pages de la plate-forme avec ces chaînes inutiles.

Ceci permettra aussi des traductions 'contextuelles' : une clé unique comme "nouvel_item" n'étant pas traduite de la même façon selon que l'on est dans le contexte 'examen' ou le contexte 'question'...

Les traducteurs devraient donc dupliquer/traduire tous les fichiers fr.php présents (en voila la liste à ce jour) :

ppollet@prope:~/web/c2i/V1.5$ find -name fr.php -printf '%p %s\n'

./installation/langues/fr.php 2678
./langues/fr.php 65961
./codes/parcours/langues/fr.php 415
./codes/locale/fr.php 547
./codes/notions/langues/fr.php 537
./codes/nationale/fr.php 1402
./codes/config/statistiques/langues/fr.php 547
        

personnalisation de certains messages

Il est aussi possible de modifier 'localement' certains textes en les plaçant dans un fichier 'fr.php' situé dans codes/locale. Comme le contenu de ce fichier est lu après le/les fichiers de langues par défaut, vos retouches seront automatiquement appliquées.

Exemple : Vous voulez que le message de bienvenue apparaissant lors du choix de la plateforme contienne le nom de votre établissement et votre logo ; placez dans codes/locale/fr.php l'entrée suivante :



<?php


 /**
  * exemple de personnalisation locale des messages
  *
  */

$textes_langues["texte_bienvenue"] =
"<div class='information'>Bienvenue sur la plate-forme de certification et positionnement pour le C2i® niveau 1 <br/>".
"hébergée au Centre Informatique du Premier Cycle de l'INSA de Lyon <img src="/images/logo_cipc_180x60.png"/></div>";

?>

Vous pouvez inclure toute balise HTML nécessaire et éventuellement des directives CSS faisant référence à la feuille de style courante (normalement située themes/v14/style1.css)

Le contenu du dossier codes/locale ne sera jamais modifié lors des mises à jour ultérieures de version, donc vos personnalisations seront préservées.

personnalisation de certaines options

Au chargement de toutes les pages, la plateforme prendra en compte le contenu d'un fichier codes/locale/config.php si il existe. Vous pouvez donc y glisser des instructions PHP qui vous voudriez utiliser systématiquement. L'usage normal est de tester des options de configuration avant de les mettre définitivement dans la configuration avancée, mais tout est possible ...

Si ce fichier n'existe pas encore sur votre plate-forme vous pourriez avoir à le créer.




<?php

 /**
  * exemple de personnalisation de la configuration locale
  *
  */


$CFG->synchro_nat_avec_nusoap=1;  //option non documentée révision svn 891 voir forum C2i 

$CFG->afficher_lien_mail_liste_questions=0;
$CFG->afficher_lien_mail_liste_examens=0;

$CFG->regle_nom_en_majuscule=0;
$CFG->regle_nom_prenom=2;


//$CFG->debug_ldap_groupes=1;  //activer le mode debug du module ldap 

//$CFG->smtp_debugging=1; //activer le mode debug du module d'envoi de courriel 


?>

Le contenu du dossier codes/locale ne sera jamais modifié lors des mises à jour ultérieures de version, donc vos personnalisations seront préservées.

critères de recherche conservés

Dans les différentes listes, les critères de recherche et de tri sont conservés, quelque soit la manipulation ultérieure demandée .

Criteres collants.png

listes triables

Dans les écrans proposant une liste 'sans controle de pagination', vous pouvez néanmoins trier chaque colonne en cliquant dessus ; voir par exemple les résultats aux examens ou les statistiques.


Resultats liste triable.png

Pour supprimer l'affichage de la bulle d'aide Astuce, qunad vous survolez les noms des colonnes, mettez à 1 la variable de configuration $CFG->masquer_infobulles, soit dans l'écran de configuration avancée, soit dans votre fichier codes/locale/config.php.

Pour voir comment c'est codé, voyez cette page

meilleur contrôle des saisies

La saisie des informations requises aussi bien au niveau de la présence, que du type a été améliorée. Vous apprécierez peut-être celle des dates avec un calendrier flottant ...


Saisies avec validation.png

Inscriptions massives

Dans tous les formats proposés (csv, liste, apogée...) le numéro d'étudiant est toujours en premier. Les infos suivantes ne sont nécessaires que si le compte n'existe pas et si vous n'avez pas de LDAP pour le retrouver, sinon ca suffira.


Inscriptions massives csv.png

inscriptions massives à partir de groupes LDAP

Cette options a été réécrite ; elle permet en particulier de spécifier plusieurs groupes (séparé par un point-virgule) et donne ensuite un rapport de succès ou d'échec


Inscriptions massives groupes ldap.png

inscriptions massives par recherche dans l'annuaire LDAP

Cette options a été réécrite ; elle permet en particulier de spécifier plusieurs critères et donne ensuite un rapport de succès ou d'échec

Inscriptions massives recherches ldap.png

synchronisation avec l'annuaire LDAP

par défaut la plateforme met a jour les nom, prénom, numéroetudiant (ou de personnel) et email depuis l'annuaire LDAP de l'établissement à chaque connexion de l'utilisateur concerné . Elle utilise les attributs Supann par défaut , ce qui peut être changé dans Configuration :

Attribut LDAP ou est stocké le numéro d'étudiant (si différent de supanncodeine) :

Attribut LDAP ou est stocké le login (si différent de uid) :

Attribut LDAP ou est stocké le nom (si différent de sn) :

Attribut LDAP ou est stocké le prénom (si différent de givenName) :

Attribut LDAP ou est stocké le mail (si différent de mail) :

A voir : le faire par un script 'cron' nocturne.

inscription massive de candidats existants

Cette nouvelle option permet d'inscrire à un examen des candidats connus, par exemple ayant déja passé un test de postionnement au préalable

Inscriptions massives connus.png

fiches examen

elle est organisée en onglets qui apparaissent ou non selon le type et l'état de l'examen.

Par exemple celle ci concerne un examen terminé ayant été passé ; il y a donc un onglet "Résultats"

Fiche examen avec resultats.png


et celle-ci un examen de type "pool" ; il y a donc un onglet Pool mais pas d'onglets Aperçus, Optique ou Résultats puisque ces onglets ne sont pas pertinents (ils apparaitront dans les examens membres de ce pool). L'onglet Questions permet de sélectionner les questions du pool, à repartir dans les examens 'fils' à la condition qu'aucun examen fils n'ait encore été généré... et l'onglet Inscriptions d'inscrire massivement des candidats au pool de questions.


Fiche examen pool pere.png


Enfin celui-ci est un examen membre d'un pool, il a donc des onglets Pool, Aperçus, Optique et (eventuellement) Résultats mais pas Inscriptions (puisque l'on n'inscrit qu'au pool, pas aux membres. Il a aussi un onglet Questions, pour montrer les questions qui lui ont été affectées, mais sans possibilité de les modifier.


Fiche examen pool fils.png

Onglet Administration

A partir de la révision 969, un nouvel onglet reservé à l'administrateur de la plate-forme permet des opérations diverses sur l'examen :

Screenshot examen onglet admin.png

Cet onglet peut être masqué en modifiant la variable de configuration avancée onglet_admin_examen.

la notation des examens

A chaque fin de passage les résultats sont calculés à partir des résultats enregistrés a la volée dans c2iresultats

  • les scores sont stockés dans 4 tables :
    • c2iresultatsexamens : une ligne par passage (login, examen, score,date/heure validation,adresse ip,durée du passage)
    • c2iresultatsreferentiels : une ligne par référentiel (login, examen, referentiel, score, date) . Normalement 9 fois plus de lignes que c2iresultatsexamen,sauf si vous avez construit des examens par domaine avec tirage manuel des questions.
    • c2iresultatscompetences : une ligne par référentiel/alinéa (login, examen, referentiel, alinea, score, date). ce n'est pas un multiple du nombre

de passage car tous les alinéas ne sont pas testés.

    • c2iresultatsdetailles : une ligne par question (login, examen, question, score, date). autant de lignes que de questions dans l'examen (normalement45 fois le nombre de passages)

Il n'y a pas (encore) de tables c2iresultatsfamilles ;-) mais ca serait facile à recalculer...

  • Avec ces informations on peut :
    • vérifier qu'un candidat a passé l'examen (nbr lignes c2iresulatsexamen=1) (FAIT)
    • l'autorise à le repasser : on efface tout ce qui le concerne dans les 4 tables, mais pas c2iresultats, donc il retrouvera ses réponses (FAIT)
    • vérifier combien de fois il l'a passé ( nbr lignes c2itracking avec action='passage' pour cet examen). Peut etre >1 (FAIT)
    • produire des statistiques fiables par question, examen, référentiel, compétence ( score moyen, score mini, score maxi , tranches...) (FAIT)
    • proposer au candidat de voir ou de revoir ses résultats, par exemple avec une 'icône' de plus dans la liste de ses QCM (NON FAIT)

Ces tables ne sont jamais purgées sauf lorsque l'on supprime un candidat (et je me demande si on ne devrait pas les garder ?).


Si en fin de passage, un candidat referme la fenêtre de l'examen sans passer par le bouton 'terminer' ou le fait alors que le temps imparti est dépassé, vous pouvez toujours forcer la plate-forme à calculer/recalculer ses scores en passant par l'option 'Résultats par candidat' de l'onglet Résultats de la fiche de cet examen. Pour ce candidat vous verrez un message indiquant que ses scores n'ont pas été calculés et un bouton 'Renoter' pour réaliser ce calcul :

Screenshot renoter.png

L'importation des résultats depuis des lecteurs optiques remplit la table c2iresultats comme si le candidat l'avait passé 'en ligne' puis calcule ses scores par la méthode normale de fin de passage (sauf avec auto-multiple-choice AMC qui renvoie les scores par question et pas les cases cochées).

Au premier lancement d'une V 1.5, (dès que l'on clique sur Examens) tous les examens existants crées avec une version 1.4 sont 'renotés' à partir du contenu de la table c2iresultats qui contient l'historique de tous les passages précédents. ca peut être long : 5 minutes sur le clone de la nationale installé sur prope avec 115 examens...)

cas particulier des examens de positionnement avec tirage des questions lors du passage

Pour ce type d'examen, les résultats des candidats ne sont ni stockés à la volée, ni enregistrés à la fin du passage. Les candidats peuvent donc le repasser autant de fois qu'ils le désirent, avec à chaque fois un jeu de questions différentes, durant la durée de validité de l'examen. Vous n'aurez donc pas accès aux résultats par étudiant. Les candidats verront leur score en fin de passage, pourront se créer un parcours associé et éventuellement recevoir un courriel récapitulatif de leurs scores. Comme avec n'importe quel QCM de positionnement, vous avez aussi la possibilité de leur afficher le corrigé en fin de passage.

les dates

les dates sont stockées en timestamp Unix et plus en 'français'. Au premier lancement toutes les dates sont migrées et certains champs sont ajoutés (date de création, de modification, d'utilisation ... pour les examens, questions, comptes ...). Outre la programmation plus simple, cela permettra une internationalisation plus facile et un affichage des dates plus "amical"


Fiche examen dates amicales.png

preconisations suite a un passage de positionnement

elles ne sont plus codées en dur mais placées dans un fichier langues/preconisations_fr.php

Par défaut il y en a 3 , entre 0 et 40, 40 et 70 et au dela.

Pour changer les textes et/ou les "barres", éditer ce fichier par exemple:


$preconisations=array(
"20"=>"t'es nul",
"40"=>"bof",
"60"=>"pas mal",
"80"=>"t'as triché ?",
"100"=>"tu prends ma place"
);

résultats par étudiant

dans la fiche correspondante, outre l'onglet Corrigé qui donnera ses réponses et les réponses attendues, vous pourrez autoriser l'étudiant à repasser son test , par exemple en cas de problème informatique ou le renoter ...

Resultats domaine etudiant.png


Resultats repasser etudiant.png


Ces options peuvent être interdites par une variable de configuration.

Ces manipulations sont notés dans le 'tracking' de la plateforme comme le montre l'écran ci-dessous pour un étudiant de test :

Tracking etudiant repasse.png

Pools d'examen

Le code de la V 1.4 a été reorganisé pour tenir compte de la présentation en onglets . Vous trouverez plus de détail sur les pools d'examen sur cette page

notions et parcours

Le code de la v 1.3 a été enfin finalisé.

Les parcours ont désormais un 'libellé' éditable et des dates (création,modification) et les items du parcours aussi (création et validation).

L'affichage des parcours se fait par un 'arbre' dépliable par référentiel, alinéa et notions associées :

Parcours croisement examen.png


En mode "modification du parcours", des cases à cocher apparaissent pour ajouter/enlever les notions associées à ce parcours. Modif parcours.png


On peut selon des variables de configuration :

  • désactiver complètement leur utilisation c2iconfig.utiliser_notions_parcours =0 ou 1
  • forcer ou non la création d'un parcours en fin de positionnement c2iconfig.parcours_auto =0 ou 1. Si on le force, le candidat voit de suite son parcours dans un onglet dans sa feuille de résultats, sinon il a un bouton pour en créer un si il veut ...


Exportation des résultats

A part l'exportation CSV toujours disponible dans la fiche de l'examen, onglet Résultats puis résultats complets ou synthétiques, la plate-forme propose deux nouvelles méthodes d'exportation des résultats aux examens.

  • l'export direct au format OpenOffice.org à partir de la révision 956.
  • L'écriture directe dans une base de données mySQL que vous devrez configurer en éditant le fichier commun/constantes.php. Pour en savoir plus voyez cette page.
  • l'utilisation d'une opération du Services Web qui vous donnera une grande souplesse d'exploitation.

QCM par domaine

Reintroduits à partir de la révision 944, les QCM par domaine vont vous permettre de spécifier le ou les domaines traités par votre QCM et le nombre de questions , sans avoir à passer par l'écran de configuration qui est réservé à l'administrateur de la plate-forme.

Pour activer cette option, l'administrateur doit activer l'option de configuration 'autoriser_qcm_par_domaine_en_positionnement'. Elle est applicable à tout type d'examen de positionnement (tirage aléatoire, manuel ou lors du passage) ainsi que pour les pools d'examens.

En raison d'un bogue d'affichage des listes à sélection multiple avec certaines versions de Firefox, il peur arriver que vous ne voyiez pas en modification les domaines sélectionnés. Il suffit de cliquer sur l'ascenseur à droite de la liste pour les faire apparaitre.

Services Web

Les Web Services seront sans nul doute la grande nouveauté de la V1.5. Ils vous permettront d'interfacer la plateforme avec des systèmes d'information externes sans avoir besoin d'un accès physique à notre base de données et sans en connaitre la structure.

Ils sont utilisés à partir de la version 1.5 pour les communications entre les plate-formes locales et la plate-forme nationale (synchronisation des questions, familles ..., remontée des questions et de vos statistiques d'examen). Pour en savoir plus, consultez cette page.

Interconnexion avec Apogee

Il s’agit d’inscrire des étudiants de l’ELP C2I théorique dans Apogée à une épreuve théorique dans la plate-forme. Pour cela, on exportera un fichier d’Apogée en utilisant une maquette d’export. Lorsqu’on fait un export depuis Apogée via une maquette, on exporte tous les inscrits à l’ELP épreuve théorique. En conséquence, tous les étudiants contenus dans ce fichier, seront inscrits à l'épreuve dans laquelle on importe ce fichier. Le fichier exporté pouvant éventuellement contenir des notes d’un import précédent, seuls les champs permettant d’identifier les étudiants (code, nom, prénom, date de naissance) seront utilisés.

L’export de notes/résultats a pour objectif d’éviter de saisir les résultats directement dans Apogée. On peut utiliser cette technique pour insérer des notes/résultats aussi bien à un niveau fin ELP ou épreuves) qu’à un niveau élevé (résultats au C2I).

La procédure de préparation de la maquette au niveau Apogée et de sa réimportation avec les résultats est décrite ici Utilisateur:Cmathieu


La maquette d'importation est un fichier textuel, spécialement formaté par (et pour) Apogée que vous allez téléverser sur la plate-forme dans un examen, ce qui aura pour effet de créer les comptes des candidats si nécessaire et d'inscrire ces candidats à l'examen.

Pour des tests, vous pouvez télécharger ce fichier [demo_entree_apogee.txt http://prope.insa-lyon.fr/~ppollet/c2i/demo_entree_apogee.txt] (ce fichier est aussi fourni dans l'archive du code de la plate-forme dans le dossier ressources/apogee).


Lorsque les candidats auront passé cet examen, vous utiliserez à nouveau la maquette fournie par Apogée (qui a été conservée sur la plate-forme) pour garnir les lignes candidats avec les scores obtenus, puis le récuperer et enfin le réinjecter dans Apogée.


Etape 1 : inscriptions des comptes Apogée

Depuis la fiche de l'examen visé, aller dans l'onglet Inscriptions puis sélectionner le lien 'Inscriptions massives à partir d'une liste ou d'un fichier (csv ou Apogée) :

Inscriptions depuis apogee 0.png

  • Sélectionner le format de fichier Apogée
  • Puis utiliser le bouton parcourir pour aller chercher sur votre disque local le fichier contenant la maquette Apogée
  • Et enfin cliquer sur Inscrire :


Inscriptions depuis apogee.png


Au bout que quelques instants vous devriez obtenir le retour suivant ; la zone Succès content un rapport de ce qui a été fait, en terme de créations de comptes candidats et d'inscription à l'examen. Vous pouvez en copier-coller le contenu dans votre éditeur favori pour l'inspecter à loisir ; notez bien le nom du fichier maquette, qui a été conservé par la plate-forme et vous sera redemandé lors de l'exportation des résultats :

Inscriptions depuis apogee succes.png


Important : L'importation Apogée crée des comptes 'manuels' si ils n'existent pas sur la plate-forme et ne consulte pas l'éventuel annuaire LDAP de l'établissement. Si vous voulez que vos candidats utilisent leurs identifiants LDAP pour se connecter à la plate-forme il faudra procéder en deux temps :

  • D'abord les inscrire à l'examen à partir d'une liste LDAP ; probablement un fichier CSV produit par vos soins à partir des lignes de la maquette Apogée (en retirant les entêtes Apogée et en remplaçant les tabulations par des point-virgules) et en spécifiant que le numéro d'étudiant est en première colonne.
  • Puis utiliser la méthode ci-dessus avec la maquette Apogée ; dans ce cas vous devriez obtenir un rapport d'erreur indiquant que les candidats contenus dans la maquette sont déja inscrits à l'examen. Ceci est nécessaire pour que la plate-forme conserve à l'endroit approprié la maquette Apogée qu'elle va utiliser lors de l'export des résultats

* NB : la phase de réeinscription 'Apogée' peut être omise si vous avez accès au dossier des ressources de la plate-forme. Il vous suffira alors d'y copier le fichier maquette dans le dossier apogee.


Inscriptions apogee si ldap phase2.png


Cette limitation (et l'obligation de convertir les tabulations d'Apogée en point-virgules) a été levée dans la révision 1.5 971.

En consultant la liste des inscrits de votre examen, vous devriez retrouver les candidats recus d'Apogée :

Inscriptions depuis apogee liste inscrits.png

Etape 2 : passage de l'examen sur la plate-forme

Rien de nouveau . Lorsque vos candidats auront passés l'examen, vous serez alors prêt à rexeporter la maquette.

Resultats comptes apogee.png

Pour des tests de ce protocole, vous pouvez simuler un passage de cet examen dans l'onglet [ Administration de la fiche de l'examen http://c2isrv.univ-rennes1.fr/wikipfc2i-X/index.php/Whatsnew_1.5#Onglet_Administration]. La plate-forme affectera des scores aléatoires à tous les inscrits. Une simulation de passage peut ensuite être annulée dans ce même écran d'administration.

Etape 3 : Export des résultats

Aller dans la fiche de l'examen, onglet Résultats puis sélectionner l'option 'Exporter les résultats au format Apogée' :


Export resuiltats apogee 1.png


  • Sélectionner parmi les maquettes disponibles sur la plate-forme celle qui correspond
  • et appuyer sur le bouton 'Exporter' :


Resultats comptes apogee choix maquette.png


A bout de quelques instants la zone Succès devrait vous donner une trace de ce qui a été fait ( remplissage des lignes candidats d'Apogée avec leurs scores) . Ne vous reste plus qu'à télécharger le fichier produit pour inspection et rèinjection dans Apogée. La plate-forme nommera ce fichier export_apogee_xxx_yyy_nnn.txt avec xxx_yyy = l'identifiant de votre examen et nnn le nom du fichier maquette utilisé.


Resultats comptes apogee succes.png

Cette opération peut être réalisée plusieurs fois sans dommages. Un exemple de fichier produit [est disponible ici http://prope.insa-lyon.fr/~ppollet/c2i/export_apogee_65_411_demo_entree_apogee.txt]

Interconnexion avec Moodle

D'après les informations collectées lors des séminaires C2I , Moodle semble être le LMS le plus utilisé en support des formations C2I ; il paraissait donc normal que la plate-forme fournisse des moyens d'interconnexion forte avec ce logiciel.

Il existe deux moyens de coupler la plate-forme avec Moodle :

  • Moodle -> Plate-forme : L'utilisation d'un module d'activité spécifique nommé c2iexamen qui permet d'inscrire automatiquement les étudiants d'un cours Moodle à un examen disponible sur la plate-forme, puis d'en consulter les résultats directement depuis Moodle.

Ces techniques ont été présentées lors du MoodleMoot 2010 à Troyes et aux journées de production C2I organisées par l'UTV à Hammamet fin septembre 2010

Version imprimable des examens

A partir de la version 1.5 965, vous avez la possibilité de récupérer au format OpenOffice Writer, une version imprimable d'un examen, ou de son corrigé, (un bug avec les questions contenant des $ dans leurs libellés, comme celles concernant les tableurs a été corrigé en révision 970).

Allez dans la fiche de l'examen, puis dans l'onglet Apercu , sélectionnez l'option désirée :

Screenshot export ooo examen.png

Pour modifier la mise en forme de cet envoi, voyez cette page

Liste d'émargement

A partir de la version 1.5 965, une option "Liste d'émargement", directement au format OpenOffice Writer est aussi disponible dans l'onglet Inscriptions de la fiche des examens.

Import-export vers le logiciel de QCM QCMDirect

Cette option, déjà opérationnelle en version 1.3 a été entièrement réécrite. Le protocole décrit pour la version 1.3 reste néanmoins toujours valide.



A partir de la révision 1.5 968, l'import de résultats dans un membre d'un pool d'examen est opérationnel. En effet dans ce cas, aucun candidat n'était inscrit au membre du pool puisque justement la plate-forme attendait un passage 'en machine' à la bonne date pour réaliser l'inscription, et donc l'importation des résultats reçus de QCM Direct échouait puisque qu'aucun numéro d'étudiant trouvé dans le fichier QCM Direct ne correspondait à un candidat inscrit au membre. Cette situation a été résolue : si vous importer un fichier de résultats dans QCM Direct vers un membre d'un pool, la plate-forme vérifiera que chaque candidat, toujours identifié par son numéro d'étudiant, a bien été inscrit 'au pool père' ; dans ce cas son inscription à l'examen membre faisant l'objet de l'importation sera automatiquement réalisée juste avant l'importation de ses scores.

Une erreur sera déclenchée si le candidat n'est pas inscrit au pool père ou si il est déjà inscrit à l'examen membre ( l'aurait-il aussi passé en salle machine ou une importation a déjà été réalisée sur ce membre ?) et la ligne sera simplement ignorée.

Merci à l'Université de Versailles pour nous avons remonté le problème, et la solution .

Import-export vers le logiciel de QCM auto-multiple-choice AMC

Nous sommes en fin d'expérimentation de l'interfacage de la plate-forme avec le logiciel libre de génération de QCM AMC [auto-multiple-choice]. Un code expérimental est fourni à partir de la révision 969 et (presque) définitif à partir de la révision 975.

Outre le fait qu'il s'agit d'un logiciel libre, cette solution apporte de nombreux avantages :

  • Il attend en entrée un fichier au format Latex qui peut être aisément personnalisé avant impression pour diffusion aux candidats et un fichier CSV contenant la liste des inscrits (nom;prénom;numetudiant;email).

A ce jour la plate-forme émet automatiquement un zip contenant le fichier Latex sous deux formats :

    • avec grille de réponses séparées (ce qui réduit ensuite le nombre de pages à scanner)
    • sans grille de réponses séparées.
  • les éventuels documents images associés aux questions sont correctement émis et reproduit sur les sujets.
  • Il accepte le barème officiel C2I, mais le barème peut-être modifié dans le source Latex.


  • Il est capable de mélanger automatiquement les questions et les réponses sur les copies candidat ; cette option est automatiquement émise par la plate-forme si les paramètres correspondant de l'examen sont activées.
  • Il corrige automatiquement les copies scannées (avec une possibilité de contrôle manuel ultérieur) et produit directement un fichier de scores (selon le barème émis par la plate-forme), au format OpenOffice à partir du fichier des inscrits aussi émis par la plate-forme.


  • Ce fichier, après contrôle et exportation en CSV, peut ensuite être re-importé dans la plate-forme. A nouveau, dans le cas ou l'examen est membre d'un pool, les inscriptions effectives sont créées à la volée. C'est la plate-forme qui produira alors les scores par domaine requis par la directive ministérielle à partir des scores obtenus pour chaque question.

Le protocole actuel d'interfacage avec ce logiciel sera décrit sur cette page.

Echange d'examen entre plate-formes

A partir de la révision 969 (svn 1022 du 3/02/2010), il est possible de transférer un examen (sans inscrits ni résultats) entre deux plate-formes.

  • sur la plate-forme source, un administrateur va dans l'onglet Administration de l'examen concerné ( il pourra être nécessaire d'activer son affichage )

et exporte l'examen. Il recevra un fichier à télécharger qu'il ne doit surtout pas éditer , mais juste l'enregistrer sur son poste local.

  • sur la plate-forme destination, un administrateur clique sur le lien 'importer un examen' dans la liste des examens et téléverse le fichier reçu ci-dessus.
  • une copie conforme de l'examen source sera créée sur la plate-forme de destination, (mêmes caractéristiques, mêmes questions) ; il recevra un nouveau numéro 'local', sera renommé en 'import de xxxx', et son auteur deviendra celui qui a réalisé l'importation (en effet l'auteur originel peut ne pas exister sur la plate-forme destination).

Limitations :

  • toutes les questions utilisées dans l'examen source doivent être présentes sur la plate-forme de destination. Dans le cas contraire, il manquera des questions dans l'examen importé.
  • si on exporte un pool d'examen, on n'exporte pas ses éventuels membres qu'il faudra recréer sur la plate-forme destination
  • si on exporte un membre d'un pool, il sera reçu sur la plate-forme destination comme un examen 'normal', avec tirage aléatoire.
  • l'importation d'examen n'est pas permise sur la plate-forme nationale.

Information sur la durée des passages des examens

A partir de la révision 969 (svn 1032 du 8/02/2010), la plate-forme mémorise le temps passé par chaque candidat sur un examen.

Cette information peut être affichée, exportée dans les divers états (liste, réponses par étudiant, export CSV ou ODS ...). Pour activer cette option, mettre à 1 l'option de configuration avancée afficher_temps_passage.

Screenshot duree passage.png

Une mise à jour automatique des examens déjà passés a lieu à la première connexion d'un compte ayant les droits d'administrateur local, afin que cette information devienne aussi disponible pour vos anciens examens.


Compatibilité W3C

A compter de la révision 970, nous allons nous efforcer d'assurer une compatibilité W3C XHTML1.0 transitional sur toutes les pages générées par la plate-forme. En savoir plus sur cette page.


Filtrage des questions

A compter de la révision 972, un utilisateur ayant le droit de supprimer des questions, peut filter/défiltrer des questions en positionnement et/ou certification. Une question filtrée ne sera plus tirée dans les prochains examens, mais ne sera pas invalidée pour autant. Le mécanisme de filtrage est donc plus souple que celui d'invalidation qui est irrémédiable.

Cette option est configurable dans la configuration avancée en réglant les variables peut_filtrer_question_cert et peut_filtrer_question_pos. Il suffit de cliquer sur l'icône 'entonnoir' pour filtrer/défiltrer une question :

Screenshot filter question.png

Elle ne devrait pas être activée sur les plate-formes nationales.


Archivage d'examens

A compter de la révision 973, un utilisateur ayant le droit de modifier un examen, peut l'archiver ; c'est-à-dire récupérer une archive zip contenant :

  • le sujet et le corrigé au format OpenOffice Writer.
  • la liste des inscrits et des absents au format Openoffice Calc.
  • les résultats synthétiques et complets au format OpenOffice Calc et csv.

Cette nouvelle option apparait dans l'onglet résultats de la fiche d'un examen :

Screenshot archive examen.png


Après avoir cliqué sur le lien, on récupère une archive zip comme suit :

Screenshot archive zip.png

le fichier zip produit est aussi conservé sur la plate-forme dans le dossier archives des ressources et peut donc être récupéré par un administrateur.

Dans le cas d'un examen de type pool, l'archive contient un fichier sujet et corrigé et un fichier de résultats complets pour chaque membre du pool :

Screenshot archive pool.png

Merci à Nathalie Denos de l'UPMF Grenoble de nous avoir suggéré cette fonctionnalité.

Positionnement anonyme

Le positionnement anonyme permet, si il est activé, à des candidats ne disposant pas encore d'un compte sur la plate-forme de simuler leur passage dans les conditions de l'examen. Si ils fournissent une adresse électronique valide, un message leur sera envoyé avec leur score et une liste de liens sur les points du référentiel à retravailler.

Contrôle d'accès

A compter de la révision 1.5 978 vous pouvez activer un contrôle de l'utilisation de votre positionnement anonyme. Ce contrôle est paramétré par une variable de configuration avancée nommée anonyme_controle_adresse_mail dans la rubrique pfc2i.

Cette variable peut-être :

  • 0 (valeur par défaut) : une adresse mail est facultative. Si elle est fournie, elle doit être valide (d'un point de vue syntaxe)
  • 1: une adresse mail valide est obligatoire.
  • 2 : une adresse mail valide est obligatoire ET doit correspondre à un compte existant déjà sur la plate-forme ( donc à un candidat qui

a déjà été inscrit à un autre examen de positionnement).

  • 3 : une adresse mail valide est obligatoire ET doit correspondre à une adresse connue de l'annuaire LDAP de votre établissement.

Cette information est rappelée lors de l'affichage de l'écran de connexion au positionnement anonyme.

Controle anonyme cas 3.png

Positionnement anonyme sur smartphones

Depuis le début de la version 1.5 la plat-forme est utilisable sur les navigateurs intégrés aux smartphones. Si elle détecte ce type de navigateur elle utilise une feuille de style réduite qui supprime un certain nombre d'éléments graphiques encombrants ( bannière, logo, pied de page ..).

Des applications spécifiques au positionnement anonyme sur mobiles sont aussi disponibles : Positionnement anonyme sur smartphones

Pour que votre plate-forme soit utilisable il vous faut la version 1.5 977 ou ultérieure et l'extension PHP json doit avoir été installée. http://www.lephpfacile.com/manuel-php/json.requirements.php

Support expérimental du nouveau référentiel C2In1

Un nouveau référentiel, plus proche de ceux des C2I niveau 2 est en cours d'expérimentation. En savoir plus.

A compter de la révision 1.5 977, la plate-forme peut utiliser l'ancien ou le nouveau référentiel.


Pour expérimenter avec ce nouveau référentiel vous disposez de deux options :

  • Installer une seconde plate-forme C2i Niveau 1 indépendante de votre plate-forme actuelle
  • Installer une seconde plate-forme C2I Niveau 1 utilisant la même base de données que votre plate-forme actuelle


Le protocole d'installation est décrit sur cette page.

Limitation de la durée de passage d'un examen

Comme signalé sur le forum http://www.c2i.education.fr/forum/viewtopic.php?f=4&t=147, les notions de date de début et de date de fin posent un problème pour des examens de positionnement ouverts pendant une longue période de temps. Le chronomètre n'apparait en général jamais et le candidat n'est donc pas dans les conditions réelles de passage d'un véritable examen de certification.

Cette ambigüité a été résolue avec la révision 1.5 978. Si vous spécifiez une limite de la durée de passage ( en minutes) pour un examen de positionnement (anonyme ou non, généré au moment du passage ou non), le candidat devra commencer son examen entre les dates de début et de fin, mais son temps de passage sera limité. Le chronomètre apparaît alors systématiquement et à l'expiration du temps imparti (ou le dépassement de la date de fin prévue) , ses réponses sont envoyées à la plate-forme pour correction.


Positionnement limiter duree passage.png

Organisation en composantes

Cette fonctionnalité permet à une plate-forme installée au niveau d'un établissement de gérer plusieurs composantes à l'intérieur desquelles pourront ensuite être créés des comptes de personnels et de candidats, puis des examens.

Lorsqu'un personnel d'une composante se connecte, il :

  • voit l'ensemble des examens déclarés au niveau de son établissement, mais ne peut que les consulter.
  • les examens qu'il créerait seront affectés à sa composante et lui-seul pourra les modifier.
  • un administrateur d'une composante ne peut éditer que sa composante
  • un administrateur de l'établissement peut éditer son établissement et ses composantes.

Screenshot exam composante.png

En savoir plus sur cette page organisation en composantes


Restrictions des passages par adresses IP

Introduite en en révision 1.5 986, cette option permet de limiter le passage d'examens à des plages d'adresses IP préalablement définies par un administrateur réseau.

En savoir plus sur cette page restrictions ip

Commenter par mèl les questions issues de la base nationale

Screenshot commenter question par mail 0.png

Screenshot commenter question par mail.png

Outils personnels