/**
 * afficher_form_element_checkbox_eleves_professeur
 *
 * @param bool $with_pourcent
 * @return string
 */
function afficher_form_element_checkbox_eleves_professeur($with_pourcent)
{
  $affichage = '';
  $tab_regroupements = array();
  $tab_id = array('classe'=>'','groupe'=>'');
  // Recherche de la liste des classes et des groupes du professeur
  $DB_TAB = DB_STRUCTURE_PROFESSEUR::DB_lister_classes_groupes_professeur($_SESSION['USER_ID'],$_SESSION['USER_JOIN_GROUPES']);
  foreach($DB_TAB as $DB_ROW)
  {
    $tab_regroupements[$DB_ROW['groupe_id']] = array('nom'=>$DB_ROW['groupe_nom'],'eleve'=>array());
    $tab_id[$DB_ROW['groupe_type']][] = $DB_ROW['groupe_id'];
  }
  // Recherche de la liste des élèves pour chaque classe du professeur
  if(is_array($tab_id['classe']))
  {
    $listing = implode(',',$tab_id['classe']);
    $DB_TAB = DB_STRUCTURE_PROFESSEUR::DB_lister_eleves_classes($listing);
    foreach($DB_TAB as $DB_ROW)
    {
      $tab_regroupements[$DB_ROW['eleve_classe_id']]['eleve'][$DB_ROW['user_id']] = $DB_ROW['user_nom'].' '.$DB_ROW['user_prenom'].' ('.$DB_ROW['user_login'].')';
    }
  }
  // Recherche de la liste des élèves pour chaque groupe du professeur
  if(is_array($tab_id['groupe']))
  {
    $listing = implode(',',$tab_id['groupe']);
    $DB_TAB = DB_STRUCTURE_PROFESSEUR::DB_lister_eleves_groupes($listing);
    foreach($DB_TAB as $DB_ROW)
    {
      $tab_regroupements[$DB_ROW['groupe_id']]['eleve'][$DB_ROW['user_id']] = $DB_ROW['user_nom'].' '.$DB_ROW['user_prenom'].' ('.$DB_ROW['user_login'].')';
    }
  }
  // Affichage de la liste des élèves (du professeur) pour chaque classe et groupe
  foreach($tab_regroupements as $groupe_id => $tab_groupe)
  {
    $gradient_pourcent = ($with_pourcent) ? '<span id="groupe_'.$groupe_id.'" class="gradient_pourcent"></span>' : '' ;
    $affichage .= '<ul class="ul_m1">'.NL;
    $affichage .=   '<li class="li_m1"><span class="deja">'.html($tab_groupe['nom']).'</span>'.$gradient_pourcent.NL;
    $affichage .=     '<ul class="ul_n3">'.NL;
    foreach($tab_groupe['eleve'] as $eleve_id => $eleve_nom)
    {
      // C'est plus compliqué que pour les items car un élève peut appartenir à une classe et plusieurs groupes => id du groupe mélé à l'id
      $affichage .=       '<li class="li_n3"><input id="id_'.$eleve_id.'_'.$groupe_id.'" name="f_eleves[]" type="checkbox" value="'.$eleve_id.'" /><label for="id_'.$eleve_id.'_'.$groupe_id.'"> '.html($eleve_nom).'</label><span></span></li>'.NL;
    }
    $affichage .=     '</ul>'.NL;
    $affichage .=   '</li>'.NL;
    $affichage .= '</ul>'.NL;
  }
  return $affichage;
}