- phrases: multilingual database fields shown depending on language (e.g. beurteilung, studiengang,...
- added phrases
- added timepicker css
- if student not in condition, time can still be filled out
- new fields: beginnzeit, endezeit, Prüfungsantritt
- Einverständniserklärung: if not checked no save possible
- can be saved and freigegeben
- added phrases
This allows display of column 'Betrag' in Lehraufträge annehmen.
(Important for external lectors, who want to see Betrag of their new
Lehrauftraege. They usually don't have active BIS Verwendung at the
beginning of each term, therefor last (past) BIS Verwendung needs to be
checked)
Before the user got only a general error message ('Systemerror') when
an error occured. Now the error messages are more individual for better
debugging experience.
- Replace all show_error(getData( with show_error(getError(
- Replace all error($...->retval) with error(getError($...))
- Replace all ->outputJsonError(getData( with ->outputJsonError(getError(
- Replace all show_error($...->retval with show_error(getError($...
- Replace all outputJsonError($...->retval with outputJsonError(getError$...
- Replace all return error($...->retval) with return $...
Now the dropdown widgets used in lehrauftrags-process have all same
look & feel when nothing is (pre-)selected. It will display
'Ausbildungssemester' or 'Studiengang'.
After moving javascript code from the view to an external js file, the
usage of global variable has_inkludierteLehre was causing css issues.
Now the check if lector has inkludierte lehre is an extra method in the
controller which is called by AJAX in the tabulators render-callback
function.
Because of recently commited extra check of stunden/vertragstunden to
determine geaenderte Lehrauftraege correctly, the row update callback
function needed also extra information to format status icon correctly.
This is fixed now.
Before the organisational unit of the lv was sent via AJAX to the server
and used for checking the permissions on that organisational unit.
This was insecure (post data manipulation) and organisational units were
wrong (prepared string instead of oe_kurzbz).
This is fixed now by serverside check of organisational unit.
(based on given vertrag_id)
Up to now changes were identified only by comparing betrag with
vertrag_betrag.
Problem is: when a new Lehrauftrag betrag is set with 0 or NULL and only
hours are set, a later change of hours cannot be identified (as the betrag
and vertrag_betrag do not change). This is fixed now.
Before the number of params was overflowing POST param limitation of 1000.
Now data is json stringified on clientside to pack all data in only one
string. Adaptations were done also on serverside.
Now the status icon and row formats are refreshed directly after the
bestell-/erteil-/akzeptieren-button was clicked.
Returning and updating vertrag_betrag in tabulator rows is needed to
detect when geaenderte have been updated and enable correct formatting.
If a contract already exist and there is a difference between the
origin contract betrag and the lehrauftrag/projektbetreuer-betrag (after
FAS changes), the contract is updated.
Now inkludierte Lehre returns false when value is null (= freelancer
lector), else true (= fix employed lector)
This impacts the visibility of the column 'Betrag': hidden for fix
employed lectors, shown for freelancer lectors.
. Corrected SQL to get bestellt/erteilt/akzeptiert in same row
Before it was creating new row for each stati, which was wrong.
. Added mitarbeiter_uid column.
. Changed column names for better maintainance and understanding.
(e.g. row_index instead of id)
These two methods will send email to 1. authorized Kompetenzleiter or
2. Departmentleiter with data about
. study semester
. study program
. amount of Lehrauftraege