Voeg 28 herkenbare kleurplaten en creatieve niveaus toe (v0.4.66-beta) #4

Open
bes-r wants to merge 207 commits from bes-r/kleurplaten-v0-4-66 into main AGit
3 changed files with 26 additions and 10 deletions
Showing only changes of commit e24e810313 - Show all commits

View file

@ -1 +1 @@
0.2.18
0.2.20

View file

@ -283,7 +283,8 @@
return box;
}
/* super: schoolkiezer + nieuwe school */
/* overkoepelend: schoolkiezer + nieuwe school + overkoepelend-beheerders beheren.
Dit tabblad is waar een super zaken regelt die niet aan één school vastzitten. */
function renderScholenPanel(panel){
const bar = h("div","am-add");
const sel = h("select","am-sel");
@ -307,12 +308,20 @@
});
bar.appendChild(add);
panel.appendChild(bar);
/* overkoepelend beheerders horen niet bij één school, dus het aanmaken ervan
staat hier i.p.v. tussen de school-gebonden gebruikers in de Gebruikers-tab
(de lijst van bestaande supers blijft wel gewoon in Gebruikers staan) */
if(CREATABLE_ROLES[currentUser.role].includes("super")) panel.appendChild(addForm("super"));
}
/* klassen (admin/super binnen een school) */
function renderKlassenPanel(panel){
const schoolChosen = currentUser.role!=="super" || !!selSchool;
if(!schoolChosen) return;
if(!schoolChosen){
panel.appendChild(h("div","guestnote", T("amPickSchoolHint")));
return;
}
const canResetPw = can("schools.resetPasswords");
const cwrapEl = h("div","am-classes");
CLASSES.forEach(c=>{
@ -394,7 +403,11 @@
const creatable = CREATABLE_ROLES[currentUser.role];
const canAddPupil = schoolChosen && creatable.includes("pupil");
if(currentUser.role==="teacher"){
/* per-klas indeling heeft alleen zin met één gekozen school (CLASSES is dan
betrouwbaar); zonder gekozen school (super, alle scholen) of voor groepsleiding
gewoon een platte lijst - anders vallen leerlingen met een classId die niet in
de (dan lege) CLASSES-lijst voorkomt onterecht helemaal weg */
if(currentUser.role==="teacher" || !schoolChosen){
if(pupils.length){
list.appendChild(h("div","am-group", T("rolePupil")));
pupils.forEach(u=>list.appendChild(userRow(u)));
@ -417,11 +430,12 @@
}
panel.appendChild(list);
/* staf-aanmaakformulieren - welke rollen deze gebruiker mag aanmaken (CREATABLE_ROLES) */
/* staf-aanmaakformulieren - welke rollen deze gebruiker mag aanmaken (CREATABLE_ROLES).
"super" aanmaken staat in het Overkoepelend-tabblad, niet hier (die rol hoort niet
bij één school). */
if(schoolChosen){
["teacher","admin"].forEach(r=>{ if(creatable.includes(r)) panel.appendChild(addForm(r)); });
}
if(creatable.includes("super")) panel.appendChild(addForm("super"));
}
function switchAdminTab(tab){
@ -437,7 +451,7 @@
if(rp) modal.appendChild(rp);
const tabDefs = [];
if(currentUser.role==="super") tabDefs.push(["scholen", T("amSchools")]);
if(currentUser.role==="super") tabDefs.push(["scholen", T("amOverarching")]);
tabDefs.push(["klassen", T("amClasses")]);
tabDefs.push(["gebruikers", T("amUsers")]);
if(!tabDefs.some(([t])=>t===adminTab)) adminTab = tabDefs[0][0];

View file

@ -2,7 +2,7 @@
"use strict";
/* version shown until /api/version resolves (or if the fetch fails, e.g. offline).
Kept in sync by hand with the VERSION file at the repo root on every release. */
const VERSION = "0.2.18";
const VERSION = "0.2.20";
(function(){
const tag = document.getElementById("verTag");
tag.textContent = "v"+VERSION;
@ -132,7 +132,8 @@ const I18N = {
codePh:"koppelcode", beheer:"Beheer",
roleSuper:"Overkoepelend beheerder", roleAdmin:"Schoolbeheerder",
roleTeacher:"Groepsleiding", rolePupil:"Leerling",
amUsers:"Gebruikers", amClasses:"Klassen", amSchools:"Scholen",
amUsers:"Gebruikers", amClasses:"Klassen", amSchools:"Scholen", amOverarching:"Overkoepelend",
amPickSchoolHint:"Kies eerst een school bij het tabblad “Overkoepelend”.",
amNewSchool:" School", amNewClass:" Klas", amNewTeacher:" Groepsleiding",
amNewAdmin:" Schoolbeheerder", amNewSuper:" Overkoepelend beheerder",
amNewPupil:" Leerling", amUserPh:"gebruikersnaam…", amNamePh:"naam…",
@ -259,7 +260,8 @@ const I18N = {
codePh:"link code", beheer:"Management",
roleSuper:"Overarching administrator", roleAdmin:"School administrator",
roleTeacher:"Group leader", rolePupil:"Pupil",
amUsers:"Users", amClasses:"Classes", amSchools:"Schools",
amUsers:"Users", amClasses:"Classes", amSchools:"Schools", amOverarching:"Overarching",
amPickSchoolHint:"First pick a school in the “Overarching” tab.",
amNewSchool:" School", amNewClass:" Class", amNewTeacher:" Group leader",
amNewAdmin:" School admin", amNewSuper:" Overarching admin",
amNewPupil:" Pupil", amUserPh:"username…", amNamePh:"name…",