OUAREDAEK commited on
Commit
875038a
·
verified ·
1 Parent(s): 0de0b5f

Upload templates/index.html with huggingface_hub

Browse files
Files changed (1) hide show
  1. templates/index.html +106 -68
templates/index.html CHANGED
@@ -580,6 +580,23 @@ button:disabled {
580
  margin: 15px 0;
581
  }
582
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
583
  .compact-heatmap-analysis {
584
  margin-bottom: 15px;
585
  }
@@ -1247,6 +1264,10 @@ textarea:focus {
1247
  grid-template-columns: repeat(4, 1fr); /* 4 colonnes sur 2 lignes */
1248
  grid-template-rows: repeat(2, auto);
1249
  }
 
 
 
 
1250
  }
1251
 
1252
  @media (max-width: 768px) {
@@ -1358,6 +1379,10 @@ textarea:focus {
1358
  display: block;
1359
  overflow-x: auto;
1360
  }
 
 
 
 
1361
  }
1362
 
1363
  @media (max-width: 480px) {
@@ -1412,6 +1437,10 @@ textarea:focus {
1412
  padding: 10px 8px;
1413
  font-size: 13px;
1414
  }
 
 
 
 
1415
  }
1416
  </style>
1417
  </head>
@@ -1616,80 +1645,87 @@ textarea:focus {
1616
  <div class="compact-heatmap-and-indicators">
1617
  <h3>🔥 Heatmap d'activité - Analyse de Persévérance</h3>
1618
 
1619
- <div class="compact-heatmap-analysis">
1620
- <div class="compact-analysis-controls">
1621
- <label for="persistenceMode">Mode d'analyse :</label>
1622
- <select id="persistenceMode" onchange="changePersistenceAnalysis()">
1623
- <option value="regularity">📊 Régularité du travail</option>
1624
- <option value="effortPattern">🔄 Schéma d'effort</option>
1625
- <option value="deadline">⏰ Gestion des échéances</option>
1626
- <option value="combined">🎯 Vue combinée</option>
1627
- </select>
1628
- </div>
1629
-
1630
- <!-- Canvas pour le heatmap -->
1631
- <canvas id="heatmap" width="800" height="250" style="max-width: 100%; height: auto;"></canvas>
1632
- </div>
1633
-
1634
- <!-- Légende des niveaux d'activité compacte -->
1635
- <div class="compact-enriched-legend">
1636
- <div class="compact-legend-section">
1637
- <h5>📈 Niveaux d'activité</h5>
1638
- <div class="compact-legend-grid">
1639
- <div class="compact-legend-item-small">
1640
- <div class="compact-legend-color-small" style="background:#EBEDF0;"></div>
1641
- <span>Aucune activité</span>
1642
  </div>
1643
- <div class="compact-legend-item-small">
1644
- <div class="compact-legend-color-small" style="background:#C6E48B;"></div>
1645
- <span>Faible activité</span>
1646
- </div>
1647
- <div class="compact-legend-item-small">
1648
- <div class="compact-legend-color-small" style="background:#7BC96F;"></div>
1649
- <span>Activité modérée</span>
1650
- </div>
1651
- <div class="compact-legend-item-small">
1652
- <div class="compact-legend-color-small" style="background:#239A3B;"></div>
1653
- <span>Activité élevée</span>
1654
- </div>
1655
- <div class="compact-legend-item-small">
1656
- <div class="compact-legend-color-small" style="background:#196127;"></div>
1657
- <span>Activité intense</span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1658
  </div>
1659
  </div>
1660
  </div>
1661
- </div>
1662
-
1663
- <!-- Analyse de persévérance compacte -->
1664
- <div class="compact-persistence-analysis" id="compact-persistenceAnalysis">
1665
- <h5>🎯 Indicateurs de Persévérance</h5>
1666
- <div class="compact-persistence-indicators">
1667
- <div class="compact-indicator">
1668
- <span class="compact-indicator-dot" style="background:#FF6B6B;"></span>
1669
- <span>Régularité calculée : <strong id="compact-regularityScore">-</strong></span>
1670
- </div>
1671
- <div class="compact-indicator">
1672
- <span class="compact-indicator-dot" style="background:#4ECDC4;"></span>
1673
- <span>Schéma d'effort : <strong id="compact-effortPattern">-</strong></span>
1674
- </div>
1675
- <div class="compact-indicator">
1676
- <span class="compact-indicator-dot" style="background:#FFD166;"></span>
1677
- <span>Gestion échéances : <strong id="compact-deadlineScore">-</strong></span>
1678
- </div>
1679
- </div>
1680
 
1681
- <div class="compact-persistence-text" style="margin-top: 10px;">
1682
- <div style="margin-bottom: 10px;">
1683
- <strong>Schéma d'effort :</strong>
1684
- <div style="margin-top: 5px; padding: 8px; background: transparent; border-radius: 6px; font-size: 13px;">
1685
- <span id="compact-patternText">Analyse en cours...</span>
 
 
 
 
 
 
 
 
 
 
 
 
1686
  </div>
1687
- </div>
1688
- <div>
1689
- <strong>Persévérance et gestion des efforts :</strong>
1690
- <span id="compact-regularityText">Analyse en cours...</span>
1691
- </div>
 
 
 
 
 
 
 
1692
 
 
 
1693
  </div>
1694
  </div>
1695
  </div>
@@ -1716,7 +1752,7 @@ textarea:focus {
1716
  <!-- Les étoiles seront ajoutées par JavaScript -->
1717
  </div>
1718
  <small style="color: #666; display: block; margin-top: 5px;">
1719
- Le message auto-réflexif reflète-t-il fidèlement la situation réelle de létudiant (profil dapprenant) ?
1720
  </small>
1721
  </div>
1722
 
@@ -2491,6 +2527,7 @@ function updateCompactRadarMetricsGrid() {
2491
  radarMetrics.forEach(metric => {
2492
  // Déterminer la classe de couleur selon la valeur
2493
  let colorClass = "";
 
2494
  if (metric.value >= 70) colorClass = "high";
2495
  else if (metric.value >= 40) colorClass = "medium";
2496
  else colorClass = "low";
@@ -3117,6 +3154,7 @@ function initTrustSave(){
3117
 
3118
  // Récupérer les informations conditionnelles
3119
  let evaluatorName = "";
 
3120
  let evaluatorRole = "";
3121
  let expertiseLevel = "";
3122
  let messageMastery = "";
 
580
  margin: 15px 0;
581
  }
582
 
583
+ .compact-heatmap-container {
584
+ display: flex;
585
+ gap: 20px;
586
+ flex-wrap: wrap;
587
+ margin-bottom: 15px;
588
+ }
589
+
590
+ .compact-heatmap-left {
591
+ flex: 1;
592
+ min-width: 300px;
593
+ }
594
+
595
+ .compact-heatmap-right {
596
+ flex: 1;
597
+ min-width: 300px;
598
+ }
599
+
600
  .compact-heatmap-analysis {
601
  margin-bottom: 15px;
602
  }
 
1264
  grid-template-columns: repeat(4, 1fr); /* 4 colonnes sur 2 lignes */
1265
  grid-template-rows: repeat(2, auto);
1266
  }
1267
+
1268
+ .compact-heatmap-container {
1269
+ flex-direction: column;
1270
+ }
1271
  }
1272
 
1273
  @media (max-width: 768px) {
 
1379
  display: block;
1380
  overflow-x: auto;
1381
  }
1382
+
1383
+ .compact-heatmap-container {
1384
+ flex-direction: column;
1385
+ }
1386
  }
1387
 
1388
  @media (max-width: 480px) {
 
1437
  padding: 10px 8px;
1438
  font-size: 13px;
1439
  }
1440
+
1441
+ .compact-heatmap-container {
1442
+ flex-direction: column;
1443
+ }
1444
  }
1445
  </style>
1446
  </head>
 
1645
  <div class="compact-heatmap-and-indicators">
1646
  <h3>🔥 Heatmap d'activité - Analyse de Persévérance</h3>
1647
 
1648
+ <div class="compact-heatmap-container">
1649
+ <!-- Colonne gauche : Heatmap et contrôles -->
1650
+ <div class="compact-heatmap-left">
1651
+ <div class="compact-heatmap-analysis">
1652
+ <div class="compact-analysis-controls">
1653
+ <label for="persistenceMode">Mode d'analyse :</label>
1654
+ <select id="persistenceMode" onchange="changePersistenceAnalysis()">
1655
+ <option value="regularity">📊 Régularité du travail</option>
1656
+ <option value="effortPattern">🔄 Schéma d'effort</option>
1657
+ <option value="deadline">⏰ Gestion des échéances</option>
1658
+ <option value="combined">🎯 Vue combinée</option>
1659
+ </select>
 
 
 
 
 
 
 
 
 
 
 
1660
  </div>
1661
+
1662
+ <!-- Canvas pour le heatmap -->
1663
+ <canvas id="heatmap" width="800" height="250" style="max-width: 100%; height: auto;"></canvas>
1664
+
1665
+ <!-- Légende des niveaux d'activité compacte -->
1666
+ <div class="compact-enriched-legend">
1667
+ <div class="compact-legend-section">
1668
+ <h5>📈 Niveaux d'activité</h5>
1669
+ <div class="compact-legend-grid">
1670
+ <div class="compact-legend-item-small">
1671
+ <div class="compact-legend-color-small" style="background:#EBEDF0;"></div>
1672
+ <span>Aucune activité</span>
1673
+ </div>
1674
+ <div class="compact-legend-item-small">
1675
+ <div class="compact-legend-color-small" style="background:#C6E48B;"></div>
1676
+ <span>Faible activité</span>
1677
+ </div>
1678
+ <div class="compact-legend-item-small">
1679
+ <div class="compact-legend-color-small" style="background:#7BC96F;"></div>
1680
+ <span>Activité modérée</span>
1681
+ </div>
1682
+ <div class="compact-legend-item-small">
1683
+ <div class="compact-legend-color-small" style="background:#239A3B;"></div>
1684
+ <span>Activité élevée</span>
1685
+ </div>
1686
+ <div class="compact-legend-item-small">
1687
+ <div class="compact-legend-color-small" style="background:#196127;"></div>
1688
+ <span>Activité intense</span>
1689
+ </div>
1690
+ </div>
1691
+ </div>
1692
  </div>
1693
  </div>
1694
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1695
 
1696
+ <!-- Colonne droite : Indicateurs de persévérance -->
1697
+ <div class="compact-heatmap-right">
1698
+ <div class="compact-persistence-analysis" id="compact-persistenceAnalysis">
1699
+ <h5>🎯 Indicateurs de Persévérance</h5>
1700
+ <div class="compact-persistence-indicators">
1701
+ <div class="compact-indicator">
1702
+ <span class="compact-indicator-dot" style="background:#FF6B6B;"></span>
1703
+ <span>Régularité calculée : <strong id="compact-regularityScore">-</strong></span>
1704
+ </div>
1705
+ <div class="compact-indicator">
1706
+ <span class="compact-indicator-dot" style="background:#4ECDC4;"></span>
1707
+ <span>Schéma d'effort : <strong id="compact-effortPattern">-</strong></span>
1708
+ </div>
1709
+ <div class="compact-indicator">
1710
+ <span class="compact-indicator-dot" style="background:#FFD166;"></span>
1711
+ <span>Gestion échéances : <strong id="compact-deadlineScore">-</strong></span>
1712
+ </div>
1713
  </div>
1714
+
1715
+ <div class="compact-persistence-text" style="margin-top: 10px;">
1716
+ <div style="margin-bottom: 10px;">
1717
+ <strong>Schéma d'effort :</strong>
1718
+ <div style="margin-top: 5px; padding: 8px; background: transparent; border-radius: 6px; font-size: 13px;">
1719
+ <span id="compact-patternText">Analyse en cours...</span>
1720
+ </div>
1721
+ </div>
1722
+ <div>
1723
+ <strong>Persévérance et gestion des efforts :</strong>
1724
+ <span id="compact-regularityText">Analyse en cours...</span>
1725
+ </div>
1726
 
1727
+ </div>
1728
+ </div>
1729
  </div>
1730
  </div>
1731
  </div>
 
1752
  <!-- Les étoiles seront ajoutées par JavaScript -->
1753
  </div>
1754
  <small style="color: #666; display: block; margin-top: 5px;">
1755
+ Le message auto-réflexif reflète-t-il fidèlement la situation réelle de l'étudiant (profil d'apprenant) ?
1756
  </small>
1757
  </div>
1758
 
 
2527
  radarMetrics.forEach(metric => {
2528
  // Déterminer la classe de couleur selon la valeur
2529
  let colorClass = "";
2530
+ ;
2531
  if (metric.value >= 70) colorClass = "high";
2532
  else if (metric.value >= 40) colorClass = "medium";
2533
  else colorClass = "low";
 
3154
 
3155
  // Récupérer les informations conditionnelles
3156
  let evaluatorName = "";
3157
+ ;
3158
  let evaluatorRole = "";
3159
  let expertiseLevel = "";
3160
  let messageMastery = "";