- Method execReadOnlyQuery of DB_Model less strict check against SQL statements
- Added new public method setup to DB_Model to setup the model after initialization
- Added new constants to UDFLib
- Added new private method _printEndUDFBlock and _printEndUDFBlock to UDFLib
- Added new public methods setUDFUniqueId, getSession, getSessionElement, setSession, setSessionElement, saveUDFs and isAllowed to UDFLib
- Removed model system/FAS_UDF_model
- View views/system/fas_udf now uses the view templates/FHC-Header
- Added new parameter udfs to view templates/FHC-Header
- Added new properties to UDFWidget
- Added new private methods _initUDFWidget, _checkParameters and _startUDFWidget to UDFWidget
Now the dropdown widgets used in lehrauftrags-process have all same
look & feel when nothing is (pre-)selected. It will display
'Ausbildungssemester' or 'Studiengang'.
- Renamed FiltersLib to FilterWidgetLib
- Adapted code in widgets/FilterWidget, public/js/FilterWidget.js and public/js/infocenter/infocenterPersonDataset.js
- 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
- Added new constants to FiltersLib
- Added new parameter pivotui to FHC-Header to load JS and CSS for pivotUI
- Renamed constat WIDGET_URL_TABLE_DATASET to WIDGET_URL_DATASET_TABLESORTER in FilterWidget
- Added new constat WIDGET_URL_DATASET_PIVOTUI to FilterWidget
- Added new private properties _datasetRepresentation and _datasetRepresentationOptions to FilterWidget
- Renamed FilterWidget->loadViewTableDataset to loadViewDataset
- FilterWidget->loadViewDataset loads tablesorter or pivotUI view depending on the value of property _datasetRepresentation
- FilterWidget accepts two new parameter: datasetRepresentation and datasetRepOptions
- datasetRepresentation is required
- FilterWidget stores in session the _datasetRepresentation and _datasetRepresentationOptions properties
- Adapted view views/widgets/filter/filter to use loadViewDataset
- All views using FilterWidget have been adapted to use the required parameter datasetRepresentation
- Added new constats DATASET_REP_TABLESORTER and DATASET_REP_PIVOTUI to public/js/FilterWidget.js
- Added new private property _datasetRepresentation to FHC_FilterWidget in public/js/FilterWidget.js
- Based on property _datasetRepresentation FilterWidget.js will represent the FilterWidget data with tablesorter or pivotUI
- Added new private method _renderDataset to FHC_FilterWidget in public/js/FilterWidget.js
- Renamed method _renderTableDataset to _renderDatasetTablesorter in FHC_FilterWidget in public/js/FilterWidget.js
- Added new method _renderDatasetPivotUI to FHC_FilterWidget in public/js/FilterWidget.js
- Added bew method _setDatasetRepresentation to FHC_FilterWidget in public/js/FilterWidget.js
- 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
- Added function isEmptyArray to fhc_helper
- Adapted the code in application/* to use as much as possible this two new functions
- Removed the php function empty almost everywhere
- 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
- Added new core controller called Auth_Controller that extends FHC_Controller and manage the authentication
- All the controllers that were extending the CI_Controller now they extend the FHC_Controller
- All the controllers that were extending the FHC_Controller now they extend the Auth_Controller
- Added the method isAllowed to the FiltersLib to check if the authenticated user has the required permissions
- FilterWidget and controller Filters are using the method isAllowed from the FiltersLib
- 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)
If only the "app" and "dataset_name" parameters are given, at the first loading of the FilterWidget:
1. Try to load the custom filter (person_id = logged user person_id) with the given "app" and "dataset_name" that is set as default filter (default_filter = true)
2. Try to load the global filter (person_id = null) with the given "app" and "dataset_name" that is set as default filter (default_filter = true)
3. Do not load anything to avoid to retrive too many data from DB
- Added public/js/FilterWidget.js and public/js/NavigationWidget.js to collect all the JS for Filter and Navigation widgets
- Added filterwidget and navigationwidget paramaters to FHC-Header to include the new CSS and JS for Filter and Navigation widgets
- Removed all CSS and JS from the views used from Filter and Navigation widgets
- Added method _getFilterUniqueId to controller Filters to generate a unique id for a filter based on fhc_controller_id and the current page
- Adapted the code in controller Filters to use _getFilterUniqueId
- Added method _getFilterUniqueId to widget FilterWidget to generate a unique id for a filter based on fhc_controller_id and the current page
- Adapted the code in widget FilterWidget to use _getFilterUniqueId
- Removed fhc_controller_id from menu generation in InfoCenter controller
- InfoCenter controller now gives as parameter fhc_controller_id to view infocenterDetails
- InfoCenter controller now gives as parameter fhc_controller_id to various redirect
- Views infocenter, infocenterData, infocenterDetails and infocenterFreigegeben:
- including new JS and CSS to work with Navigation and Filter widgets
- including AjaxLib (required by FilterWidget.js and NavigationWidget.js)
- using fhc_controller_id in Details and unlockPerson links
- fhc_controller_id in not anymore a parameter for FilterWidget, adapted the code where FilterWidget is called
- AjaxLib: renamed method _getUrlParameter to getUrlParameter
- Removed function getUrlParameter from public/js/infocenter/infocenterDetails.js, now uses the method from AjaxLib
- Added fhc_controller_id where needed into public/js/infocenter/infocenterDetails.js
- public/js/infocenter/infocenterPersonDataset.js now uses getUrlParameter from AjaxLib
- Added paramater filter_page in infocenterPersonDataset.js when calling Filters/rowNumber
- Added private method _isAllowed to controller system/Filters
- The method _isAllowed is called in the controller constructor and checks if the caller has the permission to read data with this instance of the FilterWidget
- The permission is given as parameter when calling the FilterWidget, the parameter is called requiredPermissions
- Updated the view system/infocenter/infocenterData to give the infocenter permission to the FilterWidget
- Changed the logic into the FilterWidget to manage the requiredPermissions parameter
- Addded controller system/Navigation to retrive menus via ajax
- Renamed method _setNavigationMenuArray to setNavigationMenuArray and set as public in system/infocenter/InfoCenter
- Now the InfoCenter menu is stored in the session
- The menu is generated by the widget NavigationWidget via JS
- No need anymore to give as parameters to the views the menu arrays