Johann Hoffmann
c9c92f82d3
WIP refactor
2026-08-06 10:33:46 +02:00
Johann Hoffmann
56fcb23275
WIP
2026-08-04 17:40:07 +02:00
Johann Hoffmann
dba199b531
Merge remote-tracking branch 'origin/master' into feature-60873/GesamtnoteneingabeCis4
2026-08-04 15:31:19 +02:00
Johann Hoffmann
193dd166c3
finalizing current state of benotungstool api testsuite before touching implementation again; access suite and pruefungstermin suite have a few known failing tests, rest should run fine on a freshly resetted database! reset with 'php system/setup_testinstance.php --setup' for wrapped db setup routine;
2026-08-04 14:05:17 +02:00
Harald Bamberger
2686aee158
avoid multiple assignments to one variable
2026-08-03 19:30:49 +02:00
Johann Hoffmann
beb54c1bc5
Add Cypress API test suite for the Gesamtnoteneingabe. Tests the grade-entry rules against /api/frontend/v1/Noten, where they are enforced
...
server-side.
Generic and reusable by the next suite: setup_testinstance.php (--setup/--verify,
delegating the rebuild to paolos db_setup.sh), tasks/db.js, tasks/sshTunnel.js,
tools/dbCheck.js and cypress.config.js carry no suite-specific knowledge. A suite
adds tools/checks/<name>.js, suites/<name>.js and its own task file.
Fixture state resets over a direct Postgres connection through an SSH tunnel the
runner opens itself.
Tests: 37 passing, 5 pending, 1 failing. Pending are opt-in (Freigabe sends
real mail; the Frist config is off). The failing spec is left red on purpose: it
documents that getLvGesamtNoten filters freigabedatum < NOW(), so the read path
hides un-freigegebene notes while the write path uses the unfiltered getter. Not really certain if that is a feature or a bug;
Working on more actual testsuites now that the setup is running as intended;
2026-07-30 17:18:51 +02:00
adisposkofh
d1ca6eb988
reworked other lv plan view data controller using profil library
2026-07-29 11:28:13 +02:00
adisposkofh
be4db980ad
fixed issue with displayed locked profile images in other lv plan
2026-07-29 11:17:03 +02:00
Johann Hoffmann
4e6a2d5218
Merge branch 'master' into feature-60873/GesamtnoteneingabeCis4
...
# Conflicts:
# application/config/routes.php
# application/controllers/api/frontend/v1/Lehre.php
# application/views/CisRouterView/CisRouterView.php
# cis/private/lehre/notenliste.xls.php
# public/js/api/factory/lehre.js
# public/js/apps/Cis/Cis.js
# public/js/components/Cis/Abgabetool/AbgabetoolAssistenz.js
# public/js/helpers/StringHelpers.js
# system/phrasesupdate.php
2026-07-27 15:41:29 +02:00
Johann Hoffmann
273f00a9c4
added accept/cancel prompt to Notenvorschlag übernehmen spelling out the current benotungsdatum to the user; also added a list over all changedNoten which are about to be freigegeben in the Notenfreigabe Modal before entering a password; fixed/added some phrasen;
2026-07-24 13:52:05 +02:00
Johann Hoffmann
32de4aac6b
assistenz recht & features gesamtnoteneingabe; load stg array for assistenzen to choose any lva from; added configurable datelimit for each semester with defaults as per upcoming prüfungsordnung;
2026-07-23 16:59:40 +02:00
ma0068
35decf476c
make fields deletable with keyboard: Konto Buchungsdatum, Prüfung Datum, Abschlussprüfung Datum und Sponsion, Mobilität von und bis
2026-07-17 09:12:02 +02:00
ma0068 and Harald Bamberger
fd1b5daf9c
enable deletion of zgv and zgv master date with null and empty string
2026-07-16 14:51:38 +02:00
Harald Bamberger
c0b5f2f748
add permission to DetailHeader function for use in pv21
2026-07-16 12:58:00 +02:00
adisposkofh
8adc1c8bcc
not showing moodle events in other users' lv plans
2026-07-08 11:41:58 +02:00
Harald Bamberger
5602c7091a
Merge branch 'feature/76688-general-tabulator-issues_76776-localization' into cis40_2026-02_rc_abgabetool_finetuning_76688
2026-07-08 07:17:24 +02:00
Andreas Österreicher
6a16fb7515
Betreuerart wird Übergeben damit Zweitbetreuer keine Termine erstellen können
2026-07-07 14:33:29 +02:00
Harald Bamberger
0fd938e85c
Merge branch 'master' into feature/76688-general-tabulator-issues_76776-localization
2026-07-07 11:08:19 +02:00
Johann Hoffmann
d405296a14
also show email contact for zweitbetreuer in student page + distinguish them in the label in case of more than 1 betreuer;
2026-06-30 13:02:19 +02:00
Johann Hoffmann
6264006728
flat table selectAll Handler fix; call checkZuordnung just how we thoughtcrimed it in feature-76667/ProjektarbeitUploadZuordnungErrorMessage
2026-06-29 14:30:41 +02:00
Johann Hoffmann
8abb028f55
Merge branch 'feature-76667/ProjektarbeitUploadZuordnungErrorMessage' into cis40_2026-02_rc_abgabetool_finetuning
...
# Conflicts:
# application/controllers/api/frontend/v1/Abgabe.php
2026-06-29 13:21:14 +02:00
Johann Hoffmann
48798a9cee
zusatzdaten added to new getMitarbeiterProjektarbeiten implementation; fix assignment of noteBackend variable -> needed for benotet headers; WIP phrasen archeology
2026-06-29 13:07:11 +02:00
Johann Hoffmann
8bf18b0d37
prüfung/notenimport enabled per config + adapt notenliste.xls.php highlighting as per config; check if higher antritt prüfungen exist when editing existing ones (changing grades is not allowed, dates inbetween the other 2 antritt termine allowed); prüfungstermine with entschuldigt note are being preserved since the whole series can have 1max; frozen columns selection dropdown + 4 columns freezable (selector, uid, vorname, nachname) -> setting saved in local storage; better mirroring of new pruefung studenten dropdown with actual table sort + update the label there to be uid + name aswell; fixed the note_vorschlag select input cell; table sort doesnt clear selection; show the NotenlisteLinks.js in import modal and filter it based on LE selection;
2026-06-26 12:52:18 +02:00
Johann Hoffmann
be0943f1ba
Merge remote-tracking branch 'origin/master' into feature-60873/GesamtnoteneingabeCis4
2026-06-22 18:12:29 +02:00
Johann Hoffmann
715c9f77b8
added missing config BETREUER_SAMMELMAIL_BUTTON_STUDENT in getConfig Api Call; removed duplicate uid data field resulting from merge;
2026-06-22 11:17:14 +02:00
Harald Bamberger
90b8788c93
Merge branch 'feature-76657/AbgabetoolFinetuning' into cis40_2026-02_rc_abgabetool_finetuning
2026-06-18 14:46:05 +02:00
Harald Bamberger
c125130dcb
Merge branch 'cis40_2026-02_rc' into cis40_2026-02_rc_abgabetool_finetuning
2026-06-18 14:38:42 +02:00
Harald Bamberger
eb9c882fe9
Merge branch 'master' into cis40_2026-02_rc
2026-06-18 08:48:52 +02:00
Johann Hoffmann
2170d3e14a
numeric notensort in all tables; changed stv projektarbeit getNoten to only fetch active ones so stv and abgabetool use the same set of grades;
2026-06-16 15:17:40 +02:00
Johann Hoffmann
263b04e67f
reworked assistenz timeline feature; now shows all projektarbeiten of associated student in a more compact form;
2026-06-15 14:37:47 +02:00
Johann Hoffmann
3f99a2ce81
can send zweitbetreuer token mail on demand from betreuer abgabetool detail buttons, if it is external zweitbetreuer without benutzer
2026-06-12 12:17:00 +02:00
chfhtw
f5d81e4a93
move prepareQuery (and addSelectPrioRel) into a library and make joins more flexible & change JOIN to LEFT JOIN for tbl_studentlehrverband (the actual bugfix) & change order of JOIN tbl_benutzergruppe in fetchStudents to speed up query
2026-06-12 09:53:59 +02:00
Johann Hoffmann
e574998897
fetch both erst & zweitbetreuer in abgabetool betreueransicht; fix ProjektarbeitModel->getProjektbetreuerEmail by explicitely only querying erstbetreuer, which fixes rare cases where endupload crashes when the zweitbetreuer has no contact email as private mail AND randomly gets retrieved as first row by the query; fix race condition on the semester filter default value in assistenz view; block all edit/delete operations in flat table for any termin which already has a file uplaoded (abgabetermin != null) or has a note (due to quality gate), to avoid confusing UI implementations; fix STV Projektarbeit bug where betreuer form options where not loading correctly when editing existing projektarbeiten;
2026-06-11 17:10:33 +02:00
Johann Hoffmann
c75e1f9416
WIP
2026-06-05 10:12:03 +02:00
Johann Hoffmann
d0d590ff89
block the change of paabgabetyp if the termin has an upload associated (abgabedatum !== null) or has a note; TODO: block the same in multiedit!
2026-06-01 12:56:55 +02:00
Johann Hoffmann
60e36bb4b9
change updateProjektarbeit call so that the abgabedatum actually only gets set when doing the endupload and not also when zusatzdaten are being edited, which can certainly be an earlier or even later date;
2026-06-01 11:30:36 +02:00
Harald Bamberger
9ec876fc27
Merge branch 'feature-76657/AbgabetoolFinetuning' into cis40_2026-02_rc_abgabetool_finetuning
2026-05-29 13:32:15 +02:00
Johann Hoffmann
ae71517ceb
expanded title validation in frontend aswell before validation for the same patterns in backend just in case; phrasen alert messages & use backend response instead of frontend validated title
2026-05-29 11:47:46 +02:00
Johann Hoffmann
004bcc43c3
merged stv saveProjektarbeit/saveBetreuer buttons; benoten button for betreuer is now a table action button; remove viewData.uid and call student_uid via authinfo endpoint; digital signature info links in student abgabetool; show projektarbeit note in overview inside the accordions content aswell as flex-end in the header; smaller vertical padding on all abgabetool modals from 3rem to 1.5 rem aka py-5 to py-4;
2026-05-29 09:50:37 +02:00
Johann Hoffmann
6d79288f33
Merge remote-tracking branch 'origin/master' into feature-76657/AbgabetoolFinetuning
...
# Conflicts:
# system/phrasesupdate.php
2026-05-27 16:11:33 +02:00
Johann Hoffmann
2eb2c36d5b
replace + in email helpers with spaces; configs for title edit, multi edit table & confetti on endupload; empty student projektarbeiten check; only show dropdown labels on large displays; new phrasen & phrasen fixes;
2026-05-26 17:06:39 +02:00
Johann Hoffmann
22eed92c86
Merge branch 'feature-75838/UXImproveProjektarbeitSTVSprint247' into feature-76657/AbgabetoolFinetuning
2026-05-26 12:58:57 +02:00
Harald Bamberger
97e7e5b641
keine projektarbeiten vorhanden mit leerem array initilisieren
2026-05-26 09:12:00 +02:00
Harald Bamberger
178c854941
Merge branch 'feature-76657/AbgabetoolFinetuning' into cis40_2026-02_rc_abgabetool_finetuning
2026-05-26 07:59:17 +02:00
adisposkofh
e59bd51333
modified getPhrases endpoint: replaced get w/ post, replaced query params w/ payload
2026-05-19 16:35:22 +02:00
adisposkofh
239eaa90e9
separate endpoint for generic tabulator phrases with cacheable response
2026-05-19 16:27:54 +02:00
adisposkofh
d3ceed32c6
compacting all events in mobile monthly lv plan
2026-05-07 15:15:50 +02:00
adisposkofh
229882e8d8
Merge branch 'cis40_2026-02_rc' of github.com:FH-Complete/FHC-Core into cis40_2026-02_rc
2026-05-07 13:19:49 +02:00
Harald Bamberger
90e933de00
Merge branch 'master' into cis40_2026-02_rc
2026-05-06 17:35:28 +02:00
Johann Hoffmann
d0adf2dfc3
improved assistenz subqueries for zweitbetreuer infos by using common table expression instead of 8 subqueries; adapted splitMailsHelper function to take in body parameter to set default email text by parameter; dateStyles adapted so "in 12 days" also applies to termine without uploads; titleEdit modal in student & studentDetail component; send email to relevant assistenzen & projektarbeit betreuer about change from old to new title; 2nd flat table in AbgabetoolAssistenz that provides a list of all projektarbeittermine so it can be filtered & multiselected; multi delete & multi edit on these selected termine; tried to introduce a media query for zoomed in desktop users that shrinks fontsize and tabulator rows/cells; standard assistenz table column definitions have sensible minWidths & most columns are default invisible; fancy multiselect headerfilter on qualitygate 1/2 status column; actually figured out a vue watcher race codnition triggering loadProjektarbeiten twice unnecessarily; added a reload Button in case one observes a faulty reactivity somewhere in the table; fancy multiselect headerfilter on termin status column for flat table; Preselect current Semester & autoapply Filter for it; WIP refine new table & hunt for bugz; WIP working on the exact custom select handler Handling with filtered datasets; fixed root element style on legacy php view for abgabetool in old cis; WIP define more accurate allowed to delete & allowed to Edit conditions for abgabetermine -> currently benotet quality gates can be edited/deleted!!!!!
2026-05-06 13:46:26 +02:00