RoyAalekh commited on
Commit
8bcd80c
·
1 Parent(s): ca371b2

feat: Update user accounts with personalized credentials

Browse files

- Update user accounts to use custom names: aalekh, admin, ishita, jeeb
- Use standardized password format: name@maptrees for all users
- Aalekh has admin privileges for full system control
- Admin account for administrative tasks
- Ishita and Jeeb have researcher roles with edit_own permissions
- Update login page with new account selection
- Auto-select Ishita account for easy testing
- Maintain role-based permission system

Files changed (2) hide show
  1. auth.py +17 -17
  2. static/login.html +13 -13
auth.py CHANGED
@@ -18,34 +18,34 @@ class AuthManager:
18
 
19
  # Predefined user accounts (in production, use a database)
20
  self.users = {
21
- # Owner account
22
- "admin": {
23
- "password_hash": self._hash_password("treetrack2025!"),
24
  "role": "admin",
25
- "full_name": "TreeTrack Administrator",
26
  "permissions": ["read", "write", "delete", "admin"]
27
  },
28
 
29
- # System account
30
- "system": {
31
- "password_hash": self._hash_password("system@tree2025"),
32
- "role": "system",
33
- "full_name": "System User",
34
- "permissions": ["read", "write", "delete", "system"]
35
  },
36
 
37
- # User accounts (you can share these credentials)
38
- "researcher1": {
39
- "password_hash": self._hash_password("field@research2025"),
40
  "role": "researcher",
41
- "full_name": "Field Researcher 1",
42
  "permissions": ["read", "write", "edit_own"]
43
  },
44
 
45
- "researcher2": {
46
- "password_hash": self._hash_password("tree@study2025"),
47
  "role": "researcher",
48
- "full_name": "Field Researcher 2",
49
  "permissions": ["read", "write", "edit_own"]
50
  }
51
  }
 
18
 
19
  # Predefined user accounts (in production, use a database)
20
  self.users = {
21
+ # Administrator account
22
+ "aalekh": {
23
+ "password_hash": self._hash_password("aalekh@maptrees"),
24
  "role": "admin",
25
+ "full_name": "Aalekh",
26
  "permissions": ["read", "write", "delete", "admin"]
27
  },
28
 
29
+ # System account (for admin use)
30
+ "admin": {
31
+ "password_hash": self._hash_password("admin@maptrees"),
32
+ "role": "admin",
33
+ "full_name": "System Administrator",
34
+ "permissions": ["read", "write", "delete", "admin"]
35
  },
36
 
37
+ # User accounts
38
+ "ishita": {
39
+ "password_hash": self._hash_password("ishita@maptrees"),
40
  "role": "researcher",
41
+ "full_name": "Ishita",
42
  "permissions": ["read", "write", "edit_own"]
43
  },
44
 
45
+ "jeeb": {
46
+ "password_hash": self._hash_password("jeeb@maptrees"),
47
  "role": "researcher",
48
+ "full_name": "Jeeb",
49
  "permissions": ["read", "write", "edit_own"]
50
  }
51
  }
static/login.html CHANGED
@@ -272,21 +272,21 @@
272
  <div class="demo-accounts">
273
  <div class="demo-title">🔐 Available Accounts</div>
274
  <div class="account-list">
275
- <div class="account-item" onclick="fillCredentials('admin', 'treetrack2025!')">
276
- <div class="account-role">Administrator</div>
277
  <div class="account-username">Full system access</div>
278
  </div>
279
- <div class="account-item" onclick="fillCredentials('researcher1', 'field@research2025')">
280
- <div class="account-role">Field Researcher 1</div>
281
- <div class="account-username">Research & documentation</div>
282
  </div>
283
- <div class="account-item" onclick="fillCredentials('researcher2', 'tree@study2025')">
284
- <div class="account-role">Field Researcher 2</div>
285
- <div class="account-username">Research & documentation</div>
286
  </div>
287
- <div class="account-item" onclick="fillCredentials('system', 'system@tree2025')">
288
- <div class="account-role">System Account</div>
289
- <div class="account-username">System operations</div>
290
  </div>
291
  </div>
292
  </div>
@@ -402,9 +402,9 @@
402
 
403
  // Auto-fill demo credentials on page load for development
404
  document.addEventListener('DOMContentLoaded', () => {
405
- // Auto-select researcher1 account for easy testing
406
  setTimeout(() => {
407
- fillCredentials('researcher1', 'field@research2025');
408
  }, 1000);
409
  });
410
  </script>
 
272
  <div class="demo-accounts">
273
  <div class="demo-title">🔐 Available Accounts</div>
274
  <div class="account-list">
275
+ <div class="account-item" onclick="fillCredentials('aalekh', 'aalekh@maptrees')">
276
+ <div class="account-role">Aalekh (Admin)</div>
277
  <div class="account-username">Full system access</div>
278
  </div>
279
+ <div class="account-item" onclick="fillCredentials('admin', 'admin@maptrees')">
280
+ <div class="account-role">System Admin</div>
281
+ <div class="account-username">Administrative access</div>
282
  </div>
283
+ <div class="account-item" onclick="fillCredentials('ishita', 'ishita@maptrees')">
284
+ <div class="account-role">Ishita</div>
285
+ <div class="account-username">Tree research & documentation</div>
286
  </div>
287
+ <div class="account-item" onclick="fillCredentials('jeeb', 'jeeb@maptrees')">
288
+ <div class="account-role">Jeeb</div>
289
+ <div class="account-username">Tree research & documentation</div>
290
  </div>
291
  </div>
292
  </div>
 
402
 
403
  // Auto-fill demo credentials on page load for development
404
  document.addEventListener('DOMContentLoaded', () => {
405
+ // Auto-select ishita account for easy testing
406
  setTimeout(() => {
407
+ fillCredentials('ishita', 'ishita@maptrees');
408
  }, 1000);
409
  });
410
  </script>