Commit Graph

63 Commits

Author SHA1 Message Date
Johann Hoffmann b43f1ec920 AbgabetoolAssistenz download latest uploaded file action button; UX changes Projektarbeit Tab Stv; fix stv form input bug after invalidation for selects; 2026-03-11 17:00:56 +01:00
Johann Hoffmann 56a6aa993e getMitarbeiterProjektarbeiten safeguard in case a person without any assigned betreuungen opens the page for some reason to avoid nasty confusing sql error messages from querying with empty parameters 2026-03-03 10:52:12 +01:00
Johann Hoffmann aa2334afe7 sammelmail button betreuer page; fix notenOpt retrieval in setDetailComponent for Betreuer when reopening detailView; $emit("paUpdated") after savingTermin/deletingTermin to update projektarbeit in overview table aswell; 2026-02-26 17:58:48 +01:00
Johann Hoffmann 379880aef8 filter paabgabe uploads from newOrChanged job, since uploading a file still writes updateamum/updatevon fields -> compare student_uid with updatevon; when logging new paabgabe termine insert the whole paabgabe object into the logs, not just the result id; 2026-02-25 13:10:30 +01:00
Johann Hoffmann 1e827fffee additional erstbetreuer/zweitbetreuer name parts fetch & columns default invisible, columns next/prev termin header filter & custom sort func, list header filter for qgate 1/2 status assistenz & mitarbeiter, change all "Assessor" and "Assesor" phrasen to "Reviewer" 2026-02-24 15:58:44 +01:00
Johann Hoffmann 4b1a9fe892 avoid loading paabgaben a 2nd time for mitarbeiter; extracted getDateStyleClass from components; 2026-02-19 17:33:41 +01:00
Johann Hoffmann 90c845899f explicitely set deadline to end of day to achieve the desired "valid until 23:59" logic, instead of just moving the deadline by one day; endupload deadline is now optional by defining it as a "nachreichen möglich" aka non fixtermin; 2026-02-18 11:15:59 +01:00
Johann Hoffmann a6daa7bf0c all abgabetool datepickers use date format via format="dd.MM.yyyy" instead of :format="formatDate" to enable text-input + autoapply; backend deadline datetime check for endupload; 2026-02-17 17:32:11 +01:00
Johann Hoffmann 67838eb630 load projektarbeit.note correctly for mitarbeiter; evaluate projektarbeit termin editability correctly and define a notenarray which does NOT count (currently "Nicht beurteilt" & "Noch nicht eingetragen"). such rules apply for betreuer, assistenz is allowed to do whatever they want since we never defined an actual business process anywhere and people do whatever they want anyways 2026-02-11 13:39:23 +01:00
Johann Hoffmann 6da19585ff optional sammelmail buttons assistenz abgabetool 2026-02-09 13:45:01 +01:00
Johann Hoffmann 1eda652fba remove old code 2026-02-04 17:34:21 +01:00
Johann Hoffmann cc302ed5a1 lazyload signatur status for assistenz view to avoid worst case loading times due to 50 x 30mb signatur server payload 2026-02-04 17:32:17 +01:00
Johann Hoffmann 101613ecdd detail view infos - student: {student} titel: {titel} betreuer: {betreuer} 2026-01-27 14:47:51 +01:00
Johann Hoffmann 48cd37058e also block uploads and termin changes for projektarbeiten with a note on backend 2026-01-21 14:53:44 +01:00
Johann Hoffmann c9bcf9b9b0 fixed note init by object/object key on 2nd time opening the details modal in the assistenz view; 2026-01-21 10:34:17 +01:00
Johann Hoffmann eb15d6b841 getStudentConfig Api Method; moodle link config entry; write abgabetool termin noten into header; uniform getDateStyleClass logic in all 3 views; WIP refining AbgabetoolJob; 2026-01-14 16:57:57 +01:00
Johann Hoffmann bbb90f6dc4 added fixtermin variable to Paabgabe->update() statement; email logic for sancho emails towards betreuer: return $email[0]->uid ? $email[0]->uid.'@'.DOMAIN : $email[0]->private_email; phrasen wordings; reworked assistenz config api promises as allSettled to avoid race conditions; nachreichen möglich is always the default everywhere; WIP enabling the same status logic workflow everywhere; 2026-01-13 18:20:05 +01:00
Johann Hoffmann 7c1f239dcb configurable paabgabe types for signature check; finetuned signature response message; phrasen & code cleanup; 2026-01-13 12:32:41 +01:00
Johann Hoffmann cc0f38b276 fix the comment describing the "fix" 2026-01-12 17:14:03 +01:00
Johann Hoffmann a56335f4f9 "fix" the signatur check 2026-01-12 17:11:48 +01:00
Johann Hoffmann 954c55ba3e finetuning 2026-01-12 17:06:35 +01:00
Johann Hoffmann c7250959d0 Merge remote-tracking branch 'origin/feature-61164/AbgabetoolQualityGates' into feature-61164/AbgabetoolQualityGates 2026-01-12 12:52:31 +01:00
Johann Hoffmann 6c8318ead2 wip 2026-01-12 12:51:34 +01:00
Andreas Österreicher 3095f7ea8b Notice für UID entfernt 2026-01-12 10:44:57 +01:00
Andreas Österreicher 8f98d0c5a1 Fixed UID 2026-01-12 10:31:50 +01:00
Johann Hoffmann 13232015c3 more sophisticate zuordnung check & place it in every sensitive API endpoint; WIP: check STGentitlement when querying projektarbeiten for certein stg, since only dropdown info is pulled with this berechtigungslogic in mind but not the fetch itself; 2026-01-09 14:13:26 +01:00
Johann Hoffmann db861e81b2 rewrote post param acces from $id = $_POST['id'] to $id = $this->input->post('id') and subsequently rewrote safety checks from !isset($id) || isEmptyString($id) to $id === NULL || trim((string)$id) === '' to avoid ASCII conversion of low integers when passing them to isEmptyString function 2026-01-08 17:45:02 +01:00
Johann Hoffmann 3d82d69bfc fixed student_uid variable aquisition inside StudentComponent; No allowedToSave check in client for Betreuer at all, everything done at backend level (WIP); added legacy phrasen to phrasesupdate to guarantee their existence; 2026-01-08 13:40:58 +01:00
Andreas Österreicher f845809e6b Fixed Variable Check in Abgabetool 2026-01-07 16:02:06 +01:00
Johann Hoffmann 735a6654b9 projektbeurteilung_check_available event when loading studentprojektarbeiten handled in extension 2025-12-12 13:45:01 +01:00
Johann Hoffmann eade9b7beb fixed accordion header padding size; student sees public mail, lektor gets notifs to private; remove unused injections; rewrite viewData validation for old Cis to remove console.warnings; clear abgabetermin.kurzbz when changing to smth not quality gate to avoid leaky kurzbz; fixed accordion header style offset for both cis environments; tooltip fix; only show abgabedatum if termin has upload_allowed; lower max-width in old cis; activated custom persistence for assistenz page + stricter promise handling around tableBuilt; activeIndex Handling on Student Page in case of several Projektarbetien; Phrasen gendering; 2025-12-10 17:41:01 +01:00
Johann Hoffmann ca152dc1ea add projektarbeit_id & student_uid to projektbeurteilung_formular_link event in projektarbeitsbeurteilungsextension 2025-12-04 17:28:16 +01:00
Johann Hoffmann e7a737b7aa write stg_kz & semester_kurzbz into sammelmail about each projektarbeit; move method from abgabe.php api controller to abgabejob.php 2025-12-04 15:36:24 +01:00
Johann Hoffmann e3c1287664 WIP 2025-12-04 14:49:05 +01:00
Johann Hoffmann 0c5af137db WIP notifyBetreuerAboutNewOrChangedAbgabenForBetreuedProjektarbeiten Email Job; allowed abgabetypen & allowed noten as per config now via db primary key; new ProjektbetreuerModel method "getAllBetreuerOfProjektarbeit" to do just that; 2025-12-03 16:49:49 +01:00
Johann Hoffmann 541d6d78cc projektbeurteilung_formular_link event for benotung link AbgabetoolMitarbeiterDetail.js; projektarbeit_is_current event for abstracted logic in Abgabetool; show endupload missing message on benoten if neither old nor new link are eligable; 2025-12-03 11:35:49 +01:00
Johann Hoffmann 7747857583 AbgabetoolStudent beurteilung erstbetreuer/zweitbetreuer switch + get the actual link from the projektarbeitsbeurteilung extension via event 'projektbeurteilung_download_link' + fallback from config in case that fails; WIP implementing the switch for lektor beurteilungstemplate based on isCurrent/Semester etc in an Event in the pabu extension; 2025-12-02 16:07:26 +01:00
Johann Hoffmann 6359dc0fc9 use sendUploadMail on endupload, no events for that; remove extensive form validation from student detail; serientermin update table format fix; WIP new job informing betreuer about changes to thei betreued PA's; zweitbetreuer/erstbetreuer beurteilungslink switch in abgabetoolStudent; WIP getting that link from event not hardcoded; fix checkUploadSize calculation bytes to megabytes; added beurteilungerforderlich class to accordion headers; 2025-12-02 13:13:42 +01:00
Johann Hoffmann aee6ace42e termine without uploads can now only have 'standard' or 'abgegeben' status based on datum; FHC_Api_Controller method checkUploadSize() -> checks input->server('CONTENT_LENGTH') against min($max_upload, $max_post, $memory_limit) and throws a designated filesizeExceeded error message; added fhc-orange palette for new status 'beurteilungerforderlich'; 2025-11-28 14:09:53 +01:00
Johann Hoffmann 095d5acbc5 load all studiensemester for assistenz; load paabgabetyp benotbar for all paabgaben; datediff calc luxon; new dateclass 'beurteilungrequired'; 2nd quality gate validation logic option; filter notenoptions as per config; filter abgabetypoptions as per config; upload_allowed checkbox for serientermine; serientermin modal layout rearranged; abgabetoolJob fixes; 23:59 in the descriptive col, not datepicker; zusatzdaten are required; activeIndex for accordion calulated on demand by method instead of reading a computed value; 2025-11-27 16:53:50 +01:00
Johann Hoffmann f4ca34f247 remove email sent to alert on serientermin since we do this in cronjob now; 2025-11-24 14:14:46 +01:00
Johann Hoffmann 3b7ed523b4 postStudentProjektarbeitZusatzdaten in detail view for Betreuer/Assistenz; 2025-11-21 12:36:03 +01:00
Johann Hoffmann a4fee77301 link url in abgabetoolJob per config; comment out addMeta; 2025-11-18 15:01:43 +01:00
Johann Hoffmann f89a53b156 fix getProjektbetreuerAnrede function since betreuer are not necessarily mitarbeiter with such an uid; notify students config from milliseconds to pgsql interval '1 day'; ported notifyBetreuerMail & notifyStudentMail to AbgabetoolJob.php; 2025-11-17 11:47:00 +01:00
Johann Hoffmann cff71ec829 AbgabetoolJob notifyStudentMail function to send Emails to students about their changed abgabetermine inside the configurable threshold; 2025-11-13 17:16:51 +01:00
Johann Hoffmann 2920c68f05 wip 2025-11-11 15:59:42 +01:00
Johann Hoffmann 74937db204 WIP email logs to read/send in job; 2025-11-11 15:52:04 +01:00
Johann Hoffmann 410f0c4b6a fixtermin -> "kein neichreichen erlaubt" phrase/bool logic change; signatur message on enduploads fetched from signatur server on every load request; Inplace toggle for further infos in offcanvas timeline & student details on mobile view(tooltips); reworked col/row structure on detail views for mobile; 2025-11-11 13:44:47 +01:00
Johann Hoffmann b1a1cdf235 studiensemester dropdown filter, default all, options are current/next and op to 10 back; benotet/unbenotet/alle fetch parameter; WIP orgform/studstatus cols; 2025-11-06 16:29:24 +01:00
Johann Hoffmann 3878fce625 wip abgabetool; 2025-11-05 15:34:10 +01:00