- Renamed FiltersLib to FilterWidgetLib
- Adapted code in widgets/FilterWidget, public/js/FilterWidget.js and public/js/infocenter/infocenterPersonDataset.js
- Added new view system/messages/htmlError.php
- Renamed view system/messages/messageWrite.php to system/messages/htmlWriteTemplate.php
- Added new widget views: widgets/Dropdown_widget.php and widgets/MultipleDropdown_widget.php
- Added new CSS public/css/Widgets.css
- Controller system/FASMessages:
- Renamed method write to writeTemplate and method writeReply to writeReplyTemplate
- Removed all the private methods and moved all the logic to model CL/Messages_model
- Methods writeTemplate and writeReplyTemplate do not need anymore the sender id as parameter
- Controller system/Messages:
- Renamed method write to writeTemplate
- Renamed method send to sendImplicitTemplate
- Renamed method sendJson to sendExplicitTemplateJson
- Moved all the logic to model CL/Messages_model
- Adapted php and JS code to use these new methods names and interfaces
- Removed public method getIsAdmin from MessageLib
- Method _sendMessage of MessageLib now returns the saved message ids
- Added new package olifolkerd/tabulator to composer
- Added new parameter widgets to view templates/FHC-Header.php
- Added new HTML widget widgets/Dropdown_widget and widgets/MultipleDropdown_widget
- Added constants REPLY_SUBJECT_PREFIX and REPLY_BODY_PREFIX to model CL/Messages_model
- Added new public methods prepareHtmlWriteTemplatePersons, prepareHtmlWriteTemplatePrestudents, sendImplicitTemplate, sendExplicitTemplate, getVorlage, parseMessageText and getMessageFromIds to model CL/Messages_model
- Added new private methods _getAuthUser, _lowerReplaceSpaceArrayKeys, _addOeToPrestudents, _personLog and _prepareHtmlWriteTemplate to model CL/Messages_model
- Moved js public/js/messaging/messageList.js -> public/js/infocenter/messageList.js
- Updated includes in controller system/infocenter/InfoCenter.php and view system/infocenter/infocenterDetails.php
- Orgform bezeichnung shown in german and english
Infocenter Controller changes
- constants for Interessent and Abgewiesener names added
- removed unnecessary parameters in comments
crm/Prestudent_model
- fixed typo
- Infocenter RT Freigabe not sent if Prestudent has ANY bestätigt Interessentenstatus for the Studiensemester (not only last Status)
- removed unnecessary interessentenCount array
- moved part of message send check logic to InfoCenter Controller
- using outputJson... methods instead of output type and json_encode
- added errorcallbacks for blocking errors
- called IC controller methods return success or error objects
- fitstudiengang is checked when sending freigabe stg message
- FIT Programme Studiengänge 10021,10027 can be freigegeben an Studiengang
- earlier check for existing prestudentid in prestudentmodel in getPrestudentWithZgv method
- reduced Sprache attributed to sprache, locale, bezeichnung in prestudentmodel in getPrestudentWithZgv method
- even if a prestudent is already freigegeben for a studiengang, and if Quereinstieg, "shorter" Quereinstiegsinfomessage is sent when zum RT freigegeben
- message sending: replaced ugly html parsing for check if already freigegeben with AJAX call
- Improved MessageLib
- Added method getMessageVarsPerson to MessageLib
- Moved JS from views/system/messageWrite.php to public/js/messaging/messageWrite.js
- Added new controller controllers/system/FASMessages.php
- Adapted content/fasoverlay.js.php and content/messages.js.php to use FASMessages
- new button for Freigabe zum Reihungstest, sending message to bewerber when freigabe
- button Freigabe for Studiengang with Statusgrund
- Ausbildungssemester can be saved
- Using Vorlagen for Freigabe Mail to assistance and message to bewerber
- Added Nation of address at details page
- Scroll to top button on details page
- moved messageList js to own file
- Method _setNavigationMenuFreigegeben of system/infocenter/InfoCenter controller now generate only the menu entry "Home"
- Added new const CUSTOM_MENU to FiltersLib to represent new FilterWidget parameter to specify if the menu for this filter is custom
- Added new consts NAV_MENU_FILTER_KEY, NAV_MENU_FILTER_NAME, NAV_MENU_CUSTOM_FILTER_KEY and NAV_MENU_CUSTOM_FILTER_NAME to FiltersLib as name and array keys of the filters menu array
- Added new const NAVIGATION_PAGE to FiltersLib which represents the navigation page parameter name
- Added new public method generateFilterMenu to FiltersLib to generate the filters menu structure array and stores it into the session
- Fixed methods setElementSessionMenu and setElementSessionHeader in NavigationLib
- Added new public method getFiltersByAppDatasetName to Filters_model to load all filters by their app and dataset_name
- Added new private property _customMenu to FilterWidget
- If _customMenu is NOT true then the new private method _setFilterMenu is called
- View infocenter/infocenterData.php: arranged the code differently and set customMenu as true
- View infocenter/infocenterFreigegebenData.php: arranged the code differently
- Added new global function refreshSideMenuHook to FilterWidget.js
- Renamed private method _getNavigationWidgetCalled to getNavigationPage in NavigationWidget.js
- Method refreshSideMenuHook of NavigationWidget.js now can accept parameters to give them to the ajax call
- In infocenterPersonDataset.js the function refreshSideMenuHook is declared only if the page is the index page
- infocenter freigabe/absage works with ajax now
- AjaxLib veil is displayed covering the whole page
- infocenter details studiengang kürzel is retrieved from studienordnung (if possible)
- NavigationWidget.css: added margin-right to icons in the header menu
- FilterWidget.js: function sideMenuHook now calls the renamed refreshSideMenuHook function
- NavigationWidget.js:
- Added comments
- Renamed function _printNavItem to _buildLeftMenuStructure
- Added funtion _buildHeaderMenuStructure to build the header menu
- Added function refreshSideMenuHook to call a controller that will refresh the left menu array and GUI
- infocenterPersonDataset.js:
- Renamed function refreshSideMenu to refreshSideMenuHook
- Now this function calls the NavigationWidget -> refreshSideMenuHook function
- Changed URI of path from system/infocenter/InfoCenter/infocenterFreigegeben to system/infocenter/InfoCenter/freigegeben in navigation config
- Moved the logic from Navigation controller to NavigationLib
- Added private method _loadNavigationLib to Navigation controller to load the NavigationLib with parameters
- Navigation controller now extends FHC_Controller
- Added NavigationLib to collect all the logic used by the NavigationWidget components
- Remove the handle of the fhc_controller_id from the NavigationWidget.js
- NavigationWidget.js now uses better tools that came from the AjaxLib
- Adapted InfoCenter controller to work with the new tools from NavigationWidget
- infocenterPersonDataset.js->refreshSideMenu now uses the parameter navigation_page in the ajax call
- Renamed InfoCenter controller method from infocenterFreigegeben to freigegeben
- Now methods index, freigegeben and showDetails generates their own left menu
- showDetails generate a left menu based on the origin page (index or freigegeben)
- freigegeben uses its own filters now
- Added view infocenterFreigegebenData.php
- Adapted Filters controller and FilterWidget to use this new lib
- Better memory usage in FilterWidget
- PhrasesLib now checks if categories is an empty array, it it is then avoid to call the method to load phrases (avoids an ugly error)
- Renamed the class FHC_PhraseLib to FHC_PhrasesLib (like the filename)