- Renamed method loginAS to loginASByUID in AuthLib.php
- Added new public method loginASByPersonId to AuthLib.php
- Renamed method connect to anonymousConnect in LDAPLib
- Method LDAPLib->connectUsernamePassword now checks both username and password if they are empty strings
- Added new constant LOGINAS_PERSONIDS_BLACKLIST to PermissionLib
- Renamed method isEntitledLoginAS to isEntitledLoginASByUID in PermissionLib
- Added new public method isEntitledLoginASByPersonId to PermissionLib
- Added new private method _inLAPersonIdsBlacklist to PermissionLib
- Fixed function cleanSessionElement in hlp_session_helper
- Added constants AUTHENTICATION_LOGOUT_PAGE and SESSION_LANDING_PAGE to AuthLib
- Fixed method loginLDAP in AuthLib
- Added public method redirectToLandingPage to AuthLib
- Renamed method _storeAuthObj to _storeSessionAuthObj in AuthLib
- Added private method _storeSessionLandingPage to AuthLib
- Added private method _redirectTemporarily to AuthLib
- It contains the following entries:
- List of permissions that are allowed to perform loginAs
- List of permissions that cannot be gained with loginAs
- List of users whose identity cannot be obtained with loginAs
- Removed config entries authentication_loginas_perms and authentication_loginas_blacklist from config file auth.php
- Added constants to PermissionLib: LOGINAS_ALLOWED, LOGINAS_BLACKLIST and LOGINAS_USERS_BLACKLIST
- PermissionLib loads the config file permission.php
- Added public method isEntitledLoginAS to PermissionLib
- Added private methods _inLAUsersBlacklist, _hasLANotAllowedPermissions and _hasLAPermissions to PermissionLib
- Added public method loginAS to AuthLib
- Fixed logout method in AuthLib
- Fixed loginLDAP method in AuthLib
Now the prestudent_id is retrieved by joining on study semester (instead of studienplan, which was inconsistent).
Added also restricion on stufe = 1 to retrieve only Reihungstest absolved on desktop.
- Changed LDAP_Model to a library: LDAPLib
- Removed controller system/Login
AuthLib:
- Added new private method _createAuthObjByPerson
- Moved config load from constructor to _authenticate
- Moved Person_Model load from constructor to _createAuthObjByPerson
- Removed method checkUserAuthByCode
- Removed method checkUserAuthByCodeEmail
- Adapted code to use LDAPLib
Now if the logged-in prestudents study is a Bachelor-study, all other Bachelor studies he might have applied for, are displayed. Also the testing areas (gebiete) are shown only for that Bachelor studies.
If the logged-in prestudents study is a Master (or something else than a Bachelor), only that one particular Master study is displayed on the starting page. The testing areas are shown only for that one particular Master study.
- LDAP_Model->getUserDN now returns errors with more information
- Login redirection is performed with HTTP code 302 instead of 301
- Fixed _checkHBALDAPAuthentication behavior
- AuthLib errors have more information
- Fixed paths in array authentication_login_pages in ayth.php
- Added new constants AUTHENTICATION_LOGIN and AUTHENTICATION_LOGIN_PAGES to AuthLib
- Added private method _redirectToLogin to AuthLib
- Better comments
- Added new configuration file ldap.php for LDAP connection
- Added new controller system/Login to manage logins
- Added new controller system/Logout to manage logout
- Added new core model LDAP_Model to manage LDAP connections
- Added new constants in config/constants for authentication
- Added new function getCode to hlp_message_helper
- Now core/Auth_Controller loads the AuthLib as first step
- Now PermissionLib does NOT load anymore the AuthLib
- Removed old logic from PermissionLib
- Now function getAuthUID (hlp_authentication_helper) does not load anymore the AuthLib
- Now REST_Controller loads hlp_message_helper and hlp_common_helper
- core/APIv1_Controller does NOT load anymore hlp_message_helper and hlp_common_helper
- Added new constants to AuthLib
- AuthLib constructor now accept a parameter to enable the authentication immediatly (default)
- AuthLib loads configuration file auth.php and Person_model by default
- Added public methods getAuthObj and logout to AuthLib
- Renamed CheckUserAuthByUsernamePassword to checkUserAuthByUsernamePassword, CheckUserAuthByCode to checkUserAuthByCode and CheckUserAuthByCodeEmail to checkUserAuthByCodeEmail in AuthLib
- Added private methods _createAuthObj, _isLogged, _showInvalidAuthentication, _showError, _checkBTAuthentication, _checkHBALDAPAuthentication, _checkLDAPAuthentication, _checkForeignAuthentication, _storeAuthObj and _authenticate to AuthLib
- Added functions cleanSession and cleanSessionElement to hlp_session_helper
- Renamed setElementSession to setSessionElement in hlp_session_helper
- Renamed getElementSession to getSessionElement in hlp_session_helper
- Adapted the code that were using this helper
- Autoload does NOT load anymore helper hlp_session_helper
- Controller controllers/system/Filters now loads the AuthLib
- Removed var_dump from controllers/jobs/ReihungstestJob
Now the total Reihungstestpunkte are calculated and displayed in two ways:
1. the total amount of points achieved on overall gebiete
2. the total amount of points achieved excluding specific areas, which are defined in the config file.
Now questioning areas (gebiete) can be excluded when calculating the total Reihungstestpunkte.
excluding gebiete should be defined in the config array FAS_REIHUNGSTEST_EXCLUDE_GEBIETE.
- fixed "bug" when checking if users are in group
- added additional checks for existence of group in lehreinheitgruppe and benutzergruppe before group deletion
- added methods direktUserAdd, direktuserDelete (for direkt User Zuordnung to le) to education/Lehreinheitgruppe_model
- added method getLvsByStudent to education/Lehrveranstaltung_model
- Added hasSequence = false to Benutzergruppe_model
- fixed typo in lehrveranstaltungDBML
Now the language of the Reihungstest questions is set based on the language-settings of the STG, which has the highest priority. If the language-option is true, the user will have the option to choose between the languages.
The query retrieves all actual prestudenten with the status 'Interessent' of the users person_id. (+ prio, stg, stpl and ausbildungssemester)
Optionally the function limits the result to the one stg with the highest priority.