EcoleDirecte Tools

Numérotation de la liste des élèves

当前为 2023-03-23 提交的版本,查看 最新版本

// ==UserScript==
// @name        EcoleDirecte Tools
// @namespace   Violentmonkey Scripts
// @match       https://*.ecoledirecte.com/*
// @version     1.11
// @author      OB - Education Nationale / Académie de Bordeaux - FRANCE
// @icon        https://www.ecoledirecte.com/assets/images/logoEcoleDirecte.png
// @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js
// @description Numérotation de la liste des élèves
// @license     MIT
// @date        11/03/2023
// ==/UserScript==

function ConsolePrint(message)
{
  var startTime = new Date();
  console.log('[ED-Tools] '+ startTime.toLocaleTimeString() + ' ' + message) ;
}

ConsolePrint('RUN');

function isNumeric(value) {
    return /^-?\d+$/.test(value);
}

function SetStudentsNumbers(classname) {
  var index = 1;
  var success = 0;
  var lastname = "";

  names = document.getElementsByClassName(classname)
  for (var i = 0; i < names.length; i++)
  {
    name = names[i].innerText;
    if( !isNumeric(name[0]) && name.length != 0 && name != lastname)
    {
      ConsolePrint("SET " + classname + " " + name + " INDEX " + index);
      names[i].innerHTML = "<span style='background-color: rgb(255, 255, 128);'>" + ('0000'+index).slice(-2)  + "</span> " + "<span style='color:black!important; background-color:#ffdddd!important;'>" + names[i].innerHTML + "</span>";
      lastname = name;
      index++;
      success++;
    }
  }
return(success);
}

var global_lastname = "";

function SetConseilDeClasse()
{
     /* Ne fonctionne pas (Ajax) SetStudentsNumbers("nom-eleve");  // Conseil de classe  : class="nom-eleve selected" */
    /* La liste est dans un ul de class "ng-star-inserted" */

    var lis = document.getElementsByClassName("nav-stacked") // .getElementsByTagName("li");
    for (var i = 0; i < lis.length; ++i) {
    // do something with items[i], which is a <li> element
      // A suivre
      ConsolePrint("nav-stacked ->"+lis[i]);
    }

    names = document.getElementsByClassName("nom-eleve");
    for (var i = 0; i < names.length; i++)
    {
      name = names[i].innerText;
      if( name.length > 1 && name != global_lastname )
      {
        ConsolePrint("CONSEIL DE CLASSE DE [" + name+"]");
        global_lastname = name;
      }
    }
}

/* Problème sur les composantes, la numérotation est correcte mais doublée, à revoir*/
function SearchStudentsList() {

  if ( window.location.href.indexOf("CarnetDeNotes") > -1)
  {
    if ( SetStudentsNumbers("open-eleve") == 0 ) /* Notes */
    {
      SetStudentsNumbers("nom-eleve");  /* Compétences, Appréciations, Composantes */
    }
  }
  else if ( window.location.href.indexOf("ConseilDeClasse") > -1)
  {
    SetConseilDeClasse();
  }
}

/* Application */
if (self == top) { /* run only in the top frame. we do our own frame parsing */
  ConsolePrint('STARTED');
  setInterval(SearchStudentsList, 3000);
}

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址