nehal2006 commited on
Commit
c836d54
·
1 Parent(s): a41986a

Update child level calculation and prepare for deployment

Browse files
.gitignore CHANGED
@@ -14,12 +14,17 @@ backend/.env
14
  *.db
15
  *.sqlite3
16
  backend/data/*.db
 
17
 
18
  # Local Uploads (S3 will handle this in cloud)
19
  backend/data/uploads/*
20
  !backend/data/uploads/.gitkeep
21
  backend/data/reports/*
22
  !backend/data/reports/.gitkeep
 
 
 
 
23
 
24
  # OS/IDE
25
  .vscode/
 
14
  *.db
15
  *.sqlite3
16
  backend/data/*.db
17
+ backend/app/data/*.db
18
 
19
  # Local Uploads (S3 will handle this in cloud)
20
  backend/data/uploads/*
21
  !backend/data/uploads/.gitkeep
22
  backend/data/reports/*
23
  !backend/data/reports/.gitkeep
24
+ backend/app/data/uploads/*
25
+ !backend/app/data/uploads/.gitkeep
26
+ backend/app/data/reports/*
27
+ !backend/app/data/reports/.gitkeep
28
 
29
  # OS/IDE
30
  .vscode/
backend/app/models.py CHANGED
@@ -28,15 +28,13 @@ class Child(Base):
28
  quiz_results = relationship("QuizResult", back_populates="child")
29
 
30
  def recalculate_level(self):
31
- history = (self.autism_inheritance or "").lower()
32
- sensory = (self.sensory_level or "").lower()
33
  age = self.age or 0
34
 
35
- # Level 3: 10+ or ANY high-risk
36
- if age >= 10 or history in ["immediate", "suspected"] or sensory == "high":
37
  self.level = 3
38
- # Level 2: 7–9 (or mixed) or Extended
39
- elif age >= 7 or history == "extended":
40
  self.level = 2
41
  # Level 1: 3–6
42
  else:
 
28
  quiz_results = relationship("QuizResult", back_populates="child")
29
 
30
  def recalculate_level(self):
 
 
31
  age = self.age or 0
32
 
33
+ # Level 3: 10+
34
+ if age >= 10:
35
  self.level = 3
36
+ # Level 2: 7–9
37
+ elif age >= 7:
38
  self.level = 2
39
  # Level 1: 3–6
40
  else:
backend/app/models/custom_ai/custom_weights.pth CHANGED
Binary files a/backend/app/models/custom_ai/custom_weights.pth and b/backend/app/models/custom_ai/custom_weights.pth differ
 
frontend/static/js/script.js CHANGED
@@ -1787,15 +1787,29 @@ async function loadChildrenForDashboard() {
1787
  }
1788
 
1789
  function getLevelInfo(child) {
1790
- let level = 1;
 
 
1791
  if (typeof child === 'number') {
1792
- level = child;
1793
  } else if (child && typeof child === 'object') {
1794
- level = child.level || 1;
 
 
 
1795
  }
1796
 
1797
- if (level === 3) return { level: 3, name: "Level 3: Advanced (10+ or High-Risk)", desc: "Complex emotions and mood analysis.", theme: "purple" };
1798
- if (level === 2) return { level: 2, name: "Level 2: Intermediate (7-9 or History)", desc: "Patterns and alphabetical logic.", theme: "sand" };
 
 
 
 
 
 
 
 
 
1799
  return { level: 1, name: "Level 1: Basic (3-6)", desc: "Colors, shapes, and basic emotions.", theme: "orange" };
1800
  }
1801
 
@@ -2525,3 +2539,4 @@ window.startObjectSearch = startObjectSearch;
2525
  window.startSpatialPuzzle = startSpatialPuzzle;
2526
  window.startJigsawPuzzle = startJigsawPuzzle;
2527
  window.startAdvancedPatterns = startAdvancedPatterns;
 
 
1787
  }
1788
 
1789
  function getLevelInfo(child) {
1790
+ console.log("getLevelInfo called with:", child);
1791
+ let age = 0;
1792
+
1793
  if (typeof child === 'number') {
1794
+ age = child;
1795
  } else if (child && typeof child === 'object') {
1796
+ age = parseInt(child.age) || 0;
1797
+ } else {
1798
+ // Try getting from localStorage as fallback
1799
+ age = parseInt(localStorage.getItem('selectedChildAge')) || 0;
1800
  }
1801
 
1802
+ console.log("Determined age for level check:", age);
1803
+
1804
+ let level = 1;
1805
+ if (age >= 10) level = 3;
1806
+ else if (age >= 7) level = 2;
1807
+ else level = 1;
1808
+
1809
+ console.log("Calculated level:", level);
1810
+
1811
+ if (level === 3) return { level: 3, name: "Level 3: Advanced (10+)", desc: "Complex emotions and mood analysis.", theme: "purple" };
1812
+ if (level === 2) return { level: 2, name: "Level 2: Intermediate (7-9)", desc: "Patterns and alphabetical logic.", theme: "sand" };
1813
  return { level: 1, name: "Level 1: Basic (3-6)", desc: "Colors, shapes, and basic emotions.", theme: "orange" };
1814
  }
1815
 
 
2539
  window.startSpatialPuzzle = startSpatialPuzzle;
2540
  window.startJigsawPuzzle = startJigsawPuzzle;
2541
  window.startAdvancedPatterns = startAdvancedPatterns;
2542
+ window.getLevelInfo = getLevelInfo;
frontend/templates/activities.html CHANGED
@@ -29,7 +29,7 @@
29
  </div>
30
  </div>
31
 
32
- <script src="/static/js/script.js?v=1.7"></script>
33
  <script>
34
  const GAME_TEMPLATES = {
35
  'color-match': `
@@ -242,6 +242,9 @@
242
  return;
243
  }
244
 
 
 
 
245
  indicator.innerText = levelInfo.name;
246
  desc.innerText = levelInfo.desc;
247
 
 
29
  </div>
30
  </div>
31
 
32
+ <script src="/static/js/script.js?v=2.1"></script>
33
  <script>
34
  const GAME_TEMPLATES = {
35
  'color-match': `
 
242
  return;
243
  }
244
 
245
+ console.log("Current age used for display:", age);
246
+ console.log("Level Info determined:", levelInfo);
247
+
248
  indicator.innerText = levelInfo.name;
249
  desc.innerText = levelInfo.desc;
250
 
frontend/templates/dashboard.html CHANGED
@@ -66,7 +66,7 @@
66
  </div>
67
  </div>
68
  </div>
69
- <script src="/static/js/script.js"></script>
70
  <script>
71
  document.addEventListener('DOMContentLoaded', () => {
72
  if (!token) window.location.href = '/login';
 
66
  </div>
67
  </div>
68
  </div>
69
+ <script src="/static/js/script.js?v=1.8"></script>
70
  <script>
71
  document.addEventListener('DOMContentLoaded', () => {
72
  if (!token) window.location.href = '/login';