Outils pour l'enseignement

Bookmarklet vie-scolaire

Vie-scolaire: copier-coller

Avec Firefox/Iceweasel et apparentés (aucune idée si ça marche avec d'autres navigateurs) faites glisser le lien ci-dessus sur les bookmarks. Ensuite, dans vie-scolaire et « Saisie d'un nouveau devoir », appeler ce bookmark: une zone de texte apparaît à droite de la liste des élèves. On peut y coller en une seule fois toutes les notes, depuis un tableur ou un fichier texte par exemple. Il faut qu'il y ait uniquement les notes, dans l'ordre alphabétique utilisée par vie-scolaire ; attention à un éventuel retour à la ligne tout à la fin, qui compterait comme une absence pour un élève supplémentaire. Quand c'est collé, sélectionner « remplir », et les notes seront dispersées automatiquement dans les champs des élèves.

Code source (utile uniquement pour qui voudrait améliorer ou imiter) (convertisseur) :

var div = document.createElement("td");
var table = document.getElementById("NotesSaisie1_Table1");
table.parentNode.parentNode.appendChild(div);
var area = document.createElement("textarea");
area.rows = 18;
div.appendChild(area);
button = document.createElement("a");
button.appendChild(document.createTextNode("Remplir"));
button.href = "javascript:";
button.onclick = function () {
  var n = area.value.replace(/^\h+/, "").replace(/\h+$/, "").split(/\h*\n\h*/);
  var inp = table.getElementsByTagName("input");
  var nf = [ ];
  for(var i = 0; i < inp.length; i++) {
    var num = inp[i].name.match(/NotesSaisie\d+:textbox(\d+)/);
    if(num)
      nf[Number(num[1])] = inp[i];
  }
  if(nf.length != n.length) {
    alert("Je vois " + n.length + " notes mais " + nf.length + " cases.");
    return;
  }
  for(i = 0; i < n.length; i++)
    nf[i].value = n[i];
  div.parentNode.removeChild(div);
};
div.appendChild(button);